Bug 273979 - java/openjdk21: new OpenJDK LTS release
Summary: java/openjdk21: new OpenJDK LTS release
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Many People
Assignee: freebsd-java (Nobody)
URL: https://mail.openjdk.org/pipermail/jd...
Keywords: needs-patch
Depends on:
Blocks:
 
Reported: 2023-09-20 17:25 UTC by Vladimir Druzenko
Modified: 2023-11-16 12:18 UTC (History)
8 users (show)

See Also:
vvd: maintainer-feedback? (java)


Attachments
Add support JAVA_VERSION={19[+],20[+],21[+]} - 21 is required for www/tomcat-devel (2.56 KB, patch)
2023-10-23 21:20 UTC, Vladimir Druzenko
vvd: maintainer-approval?
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Vladimir Druzenko freebsd_committer freebsd_triage 2023-09-20 17:25:34 UTC
> JDK 21, the reference implementation of Java 21, is now Generally Available.
> JDK 21 will be a long-term-support (LTS) release
https://mail.openjdk.org/pipermail/jdk-dev/2023-September/008267.html

Required for www/tomcat-devel 11.0.0-M7 and newer.
Comment 1 cedric 2023-09-21 13:52:33 UTC
Importance: Affects many people :)
Comment 2 Sérgio Siegrist 2023-09-25 11:00:56 UTC
It seems to me that Java projects have been abandoned in FreeBSD.
Theres is no activity and no replies since OpenJDK 19.
Comment 3 Michael Osipov 2023-09-25 11:02:56 UTC
(In reply to Sérgio Siegrist from comment #2)

Where should that happened, reply to what?
Comment 4 Sérgio Siegrist 2023-09-25 11:22:53 UTC
I have sent e-mails asking for OpenJDK 20. No replies.
Maybe my sender address has been blocked. But I recall having sent with two different accounts.
Comment 5 Michael Osipov 2023-09-25 11:23:49 UTC
(In reply to Sérgio Siegrist from comment #4)

Where to did you send? The BSD port is managed at https://github.com/battleblow
Comment 6 Sérgio Siegrist 2023-09-25 11:30:40 UTC
java@freebsd.org
I suppose this should work.
Comment 7 Michael Osipov 2023-09-25 11:35:58 UTC
(In reply to Sérgio Siegrist from comment #6)

None of them arrived, you should engage with infra to figure out why your email never arrived or was bounced.
Comment 8 Sérgio Siegrist 2023-09-25 11:44:17 UTC
I remember having contacted glewis@freebsd.org, too.
"Infra"? How am I supposed to contact infra? How am I supposed to know that nobody received the e-mails I sent?
This thread seems pretty abandoned as well. It's still "Affects Only Me" and no maintainer has given feedback so far.
Never mind. I'm just hoping to get an updated version of OpenJDK in FreeBSD. If nobody else cares to contact "infra" for not getting requests from users, neither do I.
Comment 9 Michael Osipov 2023-09-25 11:48:17 UTC
(In reply to Sérgio Siegrist from comment #8)

There is an archive: https://lists.freebsd.org/archives/freebsd-java/

Do you expect a volunteer maintainer to react within a SLA? You can at least check https://github.com/battleblow/jdk21/branches yourself and see that no work has been done by the downstream maintainers for the BSD port. So you need to wait a little bit for it.
Comment 10 Sérgio Siegrist 2023-09-25 11:57:54 UTC
(In reply to Michael Osipov from comment #9)
I'm subscribed to that list. Thank you. There's no relevant activity there after openjdk19, as I said.
At least the status of this bug report could be updated meaning that somebody is taking care of it. None of that so far. And why should I check a status of a bug report anywhere else?
Good news, though, that we can wait and see.
Comment 11 Vladimir Druzenko freebsd_committer freebsd_triage 2023-09-25 12:00:26 UTC
OpenJDK 8, 11, 17 and 21 are LTS.
20 isn't LTS. Who care about non-LTS JDKs with support for 6 months only?
OpenJDK 20, release "6 months ago (21 Mar 2023)", support "Ended 6 days ago (19 Sep 2023)".
Comment 12 Sérgio Siegrist 2023-09-25 12:08:23 UTC
(In reply to Vladimir Druzenko from comment #11)
I don't care for OpenJDK 20 now. I know it ended support some days ago, thank you.
I cared a lot 6 months ago, and I asked for support, just as it was given for OpenJDK 19, which also is not LTS. A reply such as "We won't support it anymore unless it's LTS" would be fine.
Comment 13 nix23 2023-09-25 12:21:23 UTC
(In reply to Sérgio Siegrist from comment #12)

So it's important for you to have a feedback if your JDK is supported, but you don't want (or care) to contact infra where your emails are.

Do you see the problem? Do you understand that FreeBSD is a community project? And do you understand that you don't pay anyone for your SLA-Response?

Other should use their time to answer my question, but asking infra? Or hell even send a patch because Java on FreeBSD is important to me? Nono Sir, my Time is too precious.
Comment 14 Sérgio Siegrist 2023-09-25 12:41:52 UTC
I don't think 6 months without any feedback is SLA-Response. You are misrepresenting me.
I reported that "There is no activity and no replies since OpenJDK 19" according to information that I had access to so far.
I was just trying to make sure that somebody was going to take care of this bug report, because I didn't see signs that that was going to happen.
As for "infra", well, how do I contact "infra"? It's hard to find directions for it. What should I do? Send an e-mail? Again? Well... Step in my shoes, please.
Thank you for your feedback.
Comment 15 nix23 2023-09-25 13:03:05 UTC
(In reply to Sérgio Siegrist from comment #14)

>I don't think 6 months without any feedback is SLA-Response. You are >misrepresenting me.

https://github.com/battleblow?tab=repositories

Check for yourself, you don't get pampered. Use your own time.

>I was just trying to make sure that somebody was going to take care of this bug >report, because I didn't see signs that that was going to happen.

So far i just see you, so maybe one should change it to -> Just Affects Sérgio and he want's it now, in less then 5 Days

>As for "infra", well, how do I contact "infra"? It's hard to find directions >for it. What should I do? Send an e-mail?

Please just use google next time would you? 
https://www.freebsd.org/administration/ 

Cluster Administrators:

"The Cluster Administrators are responsible for maintaining the machines and services that the project relies on for its distributed work and communication. Issues concerning the project’s infrastructure or setting up new machines or services should be directed to them. This team is led by the lead cluster administrator whose duties and responsbilities are described in the cluster administration charter in greater detail."

And yes they have email-addresses.

And again you don't want to use your own time but getting pampered. One should search for you, one should tell you that a repo that was last updated on Jan 26 but every other repo was updated 2 days ago, is most probably not supported anymore.
Comment 16 nix23 2023-09-25 13:15:42 UTC
Or the Postmaster Team team.
Comment 17 Greg Lewis freebsd_committer freebsd_triage 2023-09-29 06:32:04 UTC
I'd ask that everybody please relax a little.

To provide somewhat of an update.  I've had limited time for the FreeBSD port of Java since January.  I expect that circumstance to continue for the immediate future, so I can't promise a quick turn around on anything.  I will try and answer direct emails about it as I'm able, so apologies for missing your email Sérgio.

In terms of the port itself, we're close to a release of JDK 20.  I see folks commenting about that having ended support, which it has, but getting that done will help with the bootstrapping of JDK 21.  I've built and lightly tested JDK 20 on 12.4/amd64 and 13.2/aarch64.  I'd like to expand that to preferably also include builds on x86 and 14.0 (which is in beta).  Ideally we'd cover all combinations of those FreeBSD versions and architectures.  If someone happens to be interested in ppc64, and has hardware to test on, that would also be great, but I probably won't hold the release for that.  If things go well a port for openjdk20 should hopefully hit the tree sometime this weekend.

For JDK 21, I've merged the changes into the port repo.  However, now I need to go through all of those changes (there are a lot) and figure out what additional changes need to be either written for FreeBSD or pulled in from either the Linux or MacOS changes for FreeBSD to work.  I don't think that what is in the repo now compiles.  I expect this will take several weeks, but I'm not going to provide a hard date on that.

Help is always welcome.  The port repos are public.  You can help by either testing some of the build combinations above (you need to be comfortable with shell scripts and gmake and error reporting), or by running the builtin JDK tests (similar requirements), or by contributing to the maintenance of the port itself (by merging changes, writing the BSD support, etc.).  If someone happens to be good at writing GitHub actions, then writing actions that would automatically test builds when changes are pushed would be helpful.
Comment 18 Michael Osipov 2023-09-29 07:28:28 UTC
(In reply to Greg Lewis from comment #17)

Thank you Greg you for your endless work on this because Java is vital to many. What I can offer as committer to several ASF projects, I will build 20 from source next week and run all important Maven builds with unit and integration tests and see whether anything is broken compared to 8 and 11.

How I should reach out of something is broken if there is no port yet, still through a new Bugzilla issue?
Comment 19 Sérgio Siegrist 2023-09-29 13:22:19 UTC
(In reply to Greg Lewis from comment #17)
Thanks so much for your feedback and hard work!
In the meantime, the Linux distribution of OpenJDK 20/21 can be used in FreeBSD. It works with some restrictions.
Comment 20 Greg Lewis freebsd_committer freebsd_triage 2023-09-30 03:56:25 UTC
(In reply to Michael Osipov from comment #18)

Please feel free to create another Bugzilla issue since this one is ostensibly about Java 21.
Comment 21 Vladimir Druzenko freebsd_committer freebsd_triage 2023-10-01 20:10:41 UTC
java/openjdk20 is in ports now: https://cgit.freebsd.org/ports/commit/?id=fc2dccc71c49204f761d3c5291c37b285b6ffa03
Thanks to Greg Lewis (glewis@)!
Comment 22 cedric 2023-10-02 05:25:29 UTC
Does anyone know if the latest JDK works well with Virtual Threads on FreeBSD?
Comment 23 Greg Lewis freebsd_committer freebsd_triage 2023-10-03 05:36:43 UTC
(In reply to cedric from comment #22)

I believe that JDK 20 has preview support of virtual threads.  You are welcome to test using the --enable-preview flag.  Simple examples appear to work for me, but I haven't tried anything complex.
Comment 24 Graham Perrin 2023-10-03 07:18:48 UTC
A gentle hint: <https://lists.freebsd.org/subscription/freebsd-java> may be ideal for discussion that is not focused on (this bug report) landing java/openjdk21. 

Thanks
Comment 26 Vladimir Druzenko freebsd_committer freebsd_triage 2023-10-23 09:17:07 UTC
(In reply to Greg Lewis from comment #25)
Thanks!

[/usr/ports/www/tomcat-devel]# make makesum
tomcat-devel-11.0.0.m13: Makefile error: "21+" is not a valid value for JAVA_VERSION. It should be one or more of: 8 11 17 18 (with an optional "+" suffix.)

Can you please add 19, 20 and 21 to Mk/bsd.java.mk?
Comment 27 Vladimir Druzenko freebsd_committer freebsd_triage 2023-10-23 10:04:46 UTC
checking for version string... 21.0.1+12-1
configure: Found potential Boot JDK using configure arguments
configure: Potential Boot JDK found at /usr/local/openjdk19 is incorrect JDK version (openjdk version "19.0.2" 2023-01-17 OpenJDK Runtime Environment (build 19.0.2+7-1) OpenJDK 64-Bit Server VM (build 19.0.2+7-1, mixed mode, sharing)); ignoring
configure: (Your Boot JDK version must be one of: 20 21)
configure: error: The path given by --with-boot-jdk does not contain a valid Boot JDK
configure exiting with result code 1
Comment 28 commit-hook freebsd_committer freebsd_triage 2023-10-23 13:15:49 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=2ac75eafd85218e6a4f7d66bfe8cb40575b684da

commit 2ac75eafd85218e6a4f7d66bfe8cb40575b684da
Author:     Greg Lewis <glewis@FreeBSD.org>
AuthorDate: 2023-10-23 13:14:40 +0000
Commit:     Greg Lewis <glewis@FreeBSD.org>
CommitDate: 2023-10-23 13:14:40 +0000

    java/openjdk21: Fix bootstrap dependency specification

    PR:             273979

 java/openjdk21/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
Comment 29 Vladimir Druzenko freebsd_committer freebsd_triage 2023-10-23 21:20:32 UTC
Created attachment 245836 [details]
Add support JAVA_VERSION={19[+],20[+],21[+]} - 21 is required for www/tomcat-devel

Check please patch - need it for www/tomcat-devel.
Tested on live system 13.2 amd64.
Comment 30 commit-hook freebsd_committer freebsd_triage 2023-10-24 04:07:42 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=9cde18fd05f03f23cce0115e1cf46126372daab5

commit 9cde18fd05f03f23cce0115e1cf46126372daab5
Author:     Greg Lewis <glewis@FreeBSD.org>
AuthorDate: 2023-10-24 04:05:47 +0000
Commit:     Greg Lewis <glewis@FreeBSD.org>
CommitDate: 2023-10-24 04:06:28 +0000

    Mk/bsd.java.mk: Add support for JDKs 19, 20, and 21

    PR:             273979

 Mk/bsd.java.mk | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)
Comment 31 commit-hook freebsd_committer freebsd_triage 2023-10-24 04:30:47 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=c94ba5ed5035397001e226a67386973fcfd2b910

commit c94ba5ed5035397001e226a67386973fcfd2b910
Author:     Greg Lewis <glewis@FreeBSD.org>
AuthorDate: 2023-10-24 04:29:05 +0000
Commit:     Greg Lewis <glewis@FreeBSD.org>
CommitDate: 2023-10-24 04:29:05 +0000

    Mk/bsd.java.mk: Complete support for Java 19, 20 and 21

    PR:             273979
    Reported by:    vvd@

 Mk/bsd.java.mk | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
Comment 32 Greg Lewis freebsd_committer freebsd_triage 2023-10-24 04:31:02 UTC
Oops, I didn't see your patch and missed part of updating bsd.java.mk in my haste.  I've added the rest of it now
Comment 33 Vladimir Druzenko freebsd_committer freebsd_triage 2023-10-24 10:35:36 UTC
(In reply to Greg Lewis from comment #32)
Thanks.
Tomcat 11.0.0-M13 landed!
https://cgit.freebsd.org/ports/commit/?id=b45e850487cb97982e578a3bf145eb958dff105a
Comment 34 Vladimir Druzenko freebsd_committer freebsd_triage 2023-10-27 02:17:46 UTC
Need MFH to 2023Q4.
Comment 35 Vladimir Druzenko freebsd_committer freebsd_triage 2023-11-05 16:00:17 UTC
Need cherry-pick pick to 2023Q4 for commits:
3c543e99fe67d53ddc41455c452d81d2b3e16cd0 - java/openjdk20: Fix the build on aarch64
2d2c432352a6244d496b3fccaf7747fcd490ef7b - java/openjdk21: Add a port of JDK 21
2ac75eafd85218e6a4f7d66bfe8cb40575b684da - java/openjdk21: Fix bootstrap dependency specification
e7710c85bfc9949b7bd235822b49c7ad82816820 - java/openjdk21: fix build on powerpc64*
9cde18fd05f03f23cce0115e1cf46126372daab5 - Mk/bsd.java.mk: Add support for JDKs 19, 20, and 21
c94ba5ed5035397001e226a67386973fcfd2b910 - Mk/bsd.java.mk: Complete support for Java 19, 20 and 21

I can do cherry-pick self if java@ confirm this.
Comment 36 Vladimir Druzenko freebsd_committer freebsd_triage 2023-11-10 11:15:13 UTC
ping (MFH to 2023Q4 - check previous comment)
Comment 37 Vladimir Druzenko freebsd_committer freebsd_triage 2023-11-16 12:16:16 UTC
I got approval for MFH from glewis (java@) and adamw (mentor).
Comment 38 commit-hook freebsd_committer freebsd_triage 2023-11-16 12:18:03 UTC
A commit in branch 2023Q4 references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=f3b40ea4f82f3c3891457a631f9b2967893073aa

commit f3b40ea4f82f3c3891457a631f9b2967893073aa
Author:     Greg Lewis <glewis@FreeBSD.org>
AuthorDate: 2023-10-24 04:29:05 +0000
Commit:     Vladimir Druzenko <vvd@FreeBSD.org>
CommitDate: 2023-11-16 12:14:26 +0000

    Mk/bsd.java.mk: Complete support for Java 19, 20 and 21

    PR:             273979
    Reported by:    vvd@

    (cherry picked from commit c94ba5ed5035397001e226a67386973fcfd2b910)

 Mk/bsd.java.mk | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
Comment 39 commit-hook freebsd_committer freebsd_triage 2023-11-16 12:18:05 UTC
A commit in branch 2023Q4 references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=07cc5bacc3148177b6fe8c42d8f54c7d230566e3

commit 07cc5bacc3148177b6fe8c42d8f54c7d230566e3
Author:     Greg Lewis <glewis@FreeBSD.org>
AuthorDate: 2023-10-24 04:05:47 +0000
Commit:     Vladimir Druzenko <vvd@FreeBSD.org>
CommitDate: 2023-11-16 12:14:15 +0000

    Mk/bsd.java.mk: Add support for JDKs 19, 20, and 21

    PR:             273979
    (cherry picked from commit 9cde18fd05f03f23cce0115e1cf46126372daab5)

 Mk/bsd.java.mk | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)
Comment 40 commit-hook freebsd_committer freebsd_triage 2023-11-16 12:18:06 UTC
A commit in branch 2023Q4 references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=24bf5a0635fa30d966b5de030e91a8d91265ad1d

commit 24bf5a0635fa30d966b5de030e91a8d91265ad1d
Author:     Greg Lewis <glewis@FreeBSD.org>
AuthorDate: 2023-10-23 13:14:40 +0000
Commit:     Vladimir Druzenko <vvd@FreeBSD.org>
CommitDate: 2023-11-16 12:14:03 +0000

    java/openjdk21: Fix bootstrap dependency specification

    PR:             273979
    (cherry picked from commit 2ac75eafd85218e6a4f7d66bfe8cb40575b684da)

 java/openjdk21/Makefile | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)