Page MenuHomeSolus

OpenJDK 17 Todo
Open, NormalPublic

Description

OpenJDK 17 is the newest Java LTS and represents a significant number of improvements over the previous OpenJDK 11 LTS.

Todo:

  • Bootstrap OpenJDK 17
  • De-Bootsrap OpenJDK 17 (Probably going to wait for 17.0.3 for this - Roughly April 19th)
  • Package jtreg and use it to run tests to ensure that our OpenJDK 17 build is conformant

Go through and update application package manifests to use OpenJDK 17(where supported). Where NOT supported ensure that OpenJDK 11 is an explicit build and rundep with appropriate environmental variables:

Update build tools and their dependencies to use OpenJDK 17 by default:

  • closure-compiler
    • emscripten
  • apache-maven
  • scala
  • sbt
  • gradle
  • bazel
  • apache-ant
  • clojure-tools
  • kotlin

Event Timeline

CC @chax for arduino. I don't feel comfortable updating that one as the build appears fairly complex and I don't have any way to test it was still functional afterwards.

CC @alexanderzhirov for davmail as I don't know how to test that one.

@ReillyBrogan I will check it soon, but I think everything will work correctly.

@ReillyBrogan I will check it soon, but I think everything will work correctly.

Yeah most likely it'll work fine. I've been pleasantly surprised with how compatible most openjdk-11 using applications are with openjdk-17.

The only compatibility issue I've seen is one application that needs to be built in openjdk-11 but runs fine in openjdk-17.

Feel free to look at one of the other linked diffs to see how I've been forcing openjdk-17 during the build if you want inspiration. If you want to do this before openjdk-17 hits the repo you can either build it yourself using the linked diff or I can post a link to eopkg later.

@ReillyBrogan I will check it soon, but I think everything will work correctly.

Yeah most likely it'll work fine. I've been pleasantly surprised with how compatible most openjdk-11 using applications are with openjdk-17.

Yes, I'll check. It seems that in JDK16 DavMail worked correctly for me. I made another request here at the time for a new version of OpenJDK. It will just open up the possibility to add new packages that are currently available in GitHub based on the latest versions of OpenJDK

jabref is another Java 8 application, possibly not here because it depends only on openjfx-8. I have the latest version of it building with the bootstrap package.

jabref is another Java 8 application, possibly not here because it depends only on openjfx-8. I have the latest version of it building with the bootstrap package.

The latest version of jabref appears to be fully compatible with openjdk-17. It appears that they may pull in the openjfx libraries during build time, at which point it should just work with the bootstrap package (which lacks built-in openjfx support and I'd like to keep it that way if possible).

Do you want to take updating that one?

Yes happy to take it. It indeed pulls in openjfx with gradle. We can deprecate openjfx-8 after this as jabref is the only dep. By the way, the description for the new openjdk-17 currently states it "includes [...] OpenJFX 17."

Yes happy to take it. It indeed pulls in openjfx with gradle. We can deprecate openjfx-8 after this as jabref is the only dep. By the way, the description for the new openjdk-17 currently states it "includes [...] OpenJFX 17."

Yeah, I basically copied the openjdk-11 build file to start out with. I had intended to include openjfx after bootstrapping but realized we could get away with not including it because applications have come to expect that it's not included with the JDK/JRE anymore and so bundle it themselves.

The next revision of the openjdk-17 diff I push will have the updated description.

@ReillyBrogan DavMail is working, verified.

Do you want to submit a diff for it, or should I?

FYI the openjdk-17 build is broken right now due to T10232 so I've uploaded a pre-built eopkg here

Girtablulu triaged this task as Normal priority.Apr 23 2022, 7:41 PM
Girtablulu edited projects, added Software; removed Lacks Project.
Girtablulu moved this task from Backlog to Improvement on the Software board.