2026-06-07T18:13:37.739Z
Oh maybe Reddit charges for these API calls now? idk
2026-06-08T19:59:08.893Z
oh hey, it was RDP1 for JDK 27 a few days ago, which means we're at feature completeness
time to go over the JEPs
I think there might have been one or two notable CSRs in this release as well, I should check those
2026-06-08T20:03:17.665Z
First up: some defaults changing in GC. The first JEP 523 (https://openjdk.org/jeps/523)) which makes G1 the default garbage collector in all scenarios instead of nearly all scenarios. The second is JEP 534 (https://openjdk.org/jeps/534)) which makes compact object headers default. I discussed COH more when it was released in Java 25.
2026-06-08T20:04:54.455Z
Also sort of a default, JEP 527 (https://openjdk.org/jeps/527) adds three post-quantum hybrid key exchange algorithms to the TLS 1.3 client. Users of the client will likely have them used in practice, at least with a number of servers.
2026-06-08T20:06:08.253Z
... and that is everything that is not an incubator or preview. Zero new language features in this version (and also zero new incubators or previews). The only thing that really can be considered a feature is the post-quantum hybrid key exchanges
2026-06-08T20:07:35.527Z
After Lazy Constants were significantly overhauled in their second preview, they're taking some more time to settle in, with relatively small changes in this version. https://openjdk.org/jeps/531
2026-06-08T20:08:49.158Z
The new PEM API has some new functionality (but drops record typing for some reason) https://openjdk.org/jeps/538
2026-06-08T20:10:12.425Z
Structured Concurrency, one of the more hotly-awaited features, has some notable changes. Although to be honest, I haven't been paying close attention to the details of this one because it's been quite in flux https://openjdk.org/jeps/533
2026-06-08T20:11:40.751Z
"Primitive Types in Patterns, instanceof, and switch" has no changes. Five previews with only two changes in the four re-previews feels excessive, hopefully this will be the last https://openjdk.org/jeps/532
2026-06-08T20:12:45.558Z
and as is tradition, the Vector API is re-incubated without change. Okay, they updated a bundled library, but no meaningful change. https://openjdk.org/jeps/537
I did actually miss a feature, JFR In-Process Data Redaction. I don't use JFR but this would be a handy feature for developers who do. https://openjdk.org/jeps/536
2026-06-08T20:15:50.814Z
I don't remember exactly what the CSR I was thinking of was, but there are a few things worth mentioning:
Math/StrictMath atanh, asinh, acosh (with identical implementations between the two APIs). Similarly, BigDecimal got an nth root method.
Oh, and there was a calculation bug in StrictMath.pow, which is kind of interesting (https://bugs.openjdk.org/browse/JDK-8345546)
2026-06-08T20:18:11.062Z
Oh, and there's a new, more efficient method for calculating the number of bytes that a string takes up when encoded in a given charset (https://bugs.openjdk.org/browse/JDK-8375318)
previously, you just had to encode it and check the length, which isn't ideal
2026-06-08T20:20:47.339Z
I think that's probably about it. COH by default will see programs that don't bother to change default JVM settings getting a modest performance boost on this version. Otherwise, I think the new methods in the CSRs are perhaps more interesting than the JEPs
2026-06-08T22:16:58.022Z
thanks Tizen SDK for hijacking my .NET runtime installation variables to point to your own .NET and also placing your .NET installation path at the top of my user path
really helpful there
it didn't even work after doing all that
2026-06-12T16:07:04.168Z
I'm not typically one for an [excessive citations] but this might need it
2026-06-13T05:46:52.276Z
Sometimes you're looking at a map and you go "I wonder why there's no path up this hill?" and you look up a photo and this is the hill
2026-06-15T01:51:50.253Z
think I'm finally done updating drivers
that only took about a week
2026-06-15T23:04:59.450Z
what am I supposed to do with that three-door room in the middle?
what I've always wanted in an apartment: a pentagon that one or two people can stand in
why not just knock out that wall and have it be part of the living room?
(or, well, not build the wall in the first place)
I guess the corner could be a load-bearing pillar, but it seems like that could be shifted slightly to the bedroom-living room corner
2026-06-16T04:16:50.499Z
Idea: listicle-style quiz "Am I ovulating or aviating?" with extremely obvious answers
2026-06-17T03:59:21.676Z
I think I've mentioned this before but I do really enjoy Xonix-style games, I should play them more
and in particular, Cubixx HD is a great modern take on the formula
2026-06-23T01:53:20.114Z
turns out if you go to type "test" but your hand is one key to the left, you get "rwar"
this is the quality content you get when I haven't posted on Thinkblog in almost a week
2026-06-23T03:31:29.497Z
pattern matching is sometimes useful
2026-06-24T02:16:16.848Z
2026-06-24T14:10:32.758Z
just saw an ad for Pokopia, didn't realize they were still advertising that
2026-06-24T18:29:10.034Z
I wonder how many gluten-free genderfluid girlfriends there are out there
2026-06-27T23:25:00.318Z
I'm looking to set up some accounting software, and I've settled on GnuCash, at least as a first thing to try
there are a number of warnings about the "steep warning curve", but I figured I could work through it
the first option it presents you with is "do you want to set up some accounts?", which is pretty reasonable
the second option it presents you with is "Day Threshold for Read-Only Transactions (red line)", which turns out to be a feature which lets you lock old transaactions as read-only.
nice option to have, I suppose, but perhaps not the second thing you need to present the user with, and maybe it should also be explained in the "tutorial and concepts guide" (it is explained in the manual)
the method of adding transactions is also a bit cumbersome at first but I expect I'll get a feel for it fairly quickly
2026-06-28T02:26:41.632Z
interesting bug https://bugs.openjdk.org/browse/JDK-8385926