http4s/sbt-http4s-org

Replace JDK16 with JDK17

Closed this issue · 22 comments

I don't know what's available out of the box yet. It took a few weeks before we could upgrade to 16, but 17 is more exciting.

We may need a custom jabba index as discussed in typelevel/cats-effect#2218. Pinging @vasilmkd.

If multiple Typelevel projects are going to need one of these, the Typelevel repo with a bus factor > 1 seems wise?

That was my vote too.

This is my index https://github.com/vasilmkd/jdk-index. I would be more than happy to make it an official project.

I have to issue a small warning, setting up the project would require a bit of bikeshedding.

I intentionally broke compatibility with the official jabba index versioning (I use 8, 11, 17 instead of 1.8, 1.11, 1.17) and I also changed adopt to adoptium to differentiate the switch from https://adoptopenjdk.net to https://adoptium.net.

But these are details that can be worked out easily.

I'm old enough to be confused that I can't still just download it from Sun. I'm happy to follow whatever is working on cats-effect.

I forked @vasilmkd's into typelevel and made him an admin.

As I'm already a Typelevel member, is there a possibility to actually donate the original repo?

Yeah, we could delete the fork and you could transfer it in. I was just worried about breaking existing references with that approach. You could always fork it back.

I will fork it back immediately, yes.

Alright, I'll leave it to you, and let me know if you hit any permissions snags.

@rossabaker The transfer is complete. Can you please set me as collaborator or admin again?
https://github.com/typelevel/jdk-index

Done.

@rossabaker From which branch should I start the migration of the build?

Nevermind, found it, it's in this repo only. Perfect.

Can we do it in this repo and have it be transitive?

And right on cue, the Adoptium final JDK 17 images dropped!

Fixed by #95

LeifW commented

I'm old enough to be confused that I can't still just download it from Sun. I'm happy to follow whatever is working on cats-effect.

Oracle did change the licensing for JDK 17 so you can just download via curl w/out requiring some click-through to accept their license agreement: https://jdk.java.net/17/ (and also you can use their commercial JDK in prod w/out paying them). So personally I'm switching from the adoptopenjdk / eclipse-temurin / whatever docker images to the oracle-provided openjdk one for 17.

I'm open to that. I currently run my work machine on a custom nix derivation of some bonkers GraalVM CE version that was in the onboarding guide. 20 years on the JVM, and I don't know what's cool anymore.

@rossabaker I can add the Oracle JDK to the typelevel index and it becomes available to the CI, it just needs to be selected. However, we can only do that for JDK 17, the new licensing does not apply to the previous releases.

I'm good with the adoptium one unless there's a reason to switch back.