| 24 Sep 2024 |
Infinidoge 🏳️⚧️ | In reply to @emilazy:matrix.org it's also not clear to me if we need to be shipping so many LTS versions – for instance Debian has dropped JDK 8 IMO we should keep all currently-supported LTS versions.
Not sur ewhere you got Debian dropping JDK 8 from, I can see it in the Debian package list, even in sid
| 19:23:00 |
Infinidoge 🏳️⚧️ | In reply to @emilazy:matrix.org it's also not clear to me if we need to be shipping so many LTS versions – for instance Debian has dropped JDK 8 * IMO we should keep all currently-supported LTS versions.
Not sure where you got Debian dropping JDK 8 from, I can see it in the Debian package list, even in sid
| 19:23:06 |
emily | it's only in sid, not in release versions | 19:23:09 |
emily | (I don't know why) | 19:23:11 |
Infinidoge 🏳️⚧️ | Hmm | 19:23:23 |
Infinidoge 🏳️⚧️ | Weird | 19:23:24 |
emily | our Zulu package seems binary-only to me, could you point to where it's built from source? | 19:23:25 |
Infinidoge 🏳️⚧️ | I thought it was built from source but I could just be misremembering | 19:23:38 |
Infinidoge 🏳️⚧️ | Okay yeah no it was just substituted in where the source JDKs get built which is where I got it wrong | 19:26:11 |
emily | right. so it's unclear to me why we need both Zulu and Temurin, they seem quite redundant | 19:27:06 |
Infinidoge 🏳️⚧️ | Not sure, I don't use Darwin so I just didn't touch that part lol | 19:28:19 |
emily | (and Corretto also seems sufficiently niche that I question whether it's worth maintaining in-tree) | 19:28:26 |
emily | my fear about shipping 8 indefinitely, when Debian and Ubuntu have already given up on it, is that it has 6 years of life left. newer versions will continue to diverge from it, requiring more build conditionals and complexity, and it may become increasingly painful to keep building with the modern compilers and libraries in Nixpkgs | 19:29:16 |
emily | for instance, I've had to manually backport FFmpeg support patches to older versions of OpenJFX, which is quite a maintenance drag | 19:29:34 |
Infinidoge 🏳️⚧️ | That's the kind of situation where we keep JDK 8 but stop supporting it for stuff like that | 19:29:56 |
emily | (not directly OpenJDK admittedly, but it gives an example of the churn caused by packaging many old versions of things) | 19:29:56 |
Infinidoge 🏳️⚧️ | JDK 8 itself is still important just because so, so much still relies on it
But we don't necessarily need to actively back port stuff if it isn't necessary for other packages | 19:30:32 |
Infinidoge 🏳️⚧️ | Java 8 truly is the version that will not die | 19:31:02 |
emily | well, if I hadn't spent the effort to backport FFmpeg support there then we would be keeping old FFmpegs in the tree even longer, which would be a drag on FFmpeg maintenance. carrying ancient software tends to act as a drag on the rest of the ecosystem in that way, where carrying one thing causes indefinite amounts of additional maintenance effort on other people throughout the tree. but fair enough, I get that Java 8 is particularly widely used and likely deserves some special status there (although I wonder what Debian/Ubuntu users are doing?) – but 11 and 17 aren't nearly so ubiquitous, right? | 19:32:18 |
Infinidoge 🏳️⚧️ | Yeah | 19:32:54 |
Infinidoge 🏳️⚧️ | rging in Nixpkgs, there is actually less usage than I expected, though it's hard to tell what usage is like out-of-tree | 19:33:50 |
Infinidoge 🏳️⚧️ | (Part of me wants to lib.warn "Hi! Please respond to this poll if you are still using JDK 8") | 19:34:11 |
emily | that would break CI unless you removed all the in-tree users sadly :) | 19:36:21 |
emily | you have to do some hacks to warn on a package without breaking the channels | 19:36:27 |
emily | anyway, sorry to come in here like "hi, I don't know anything, can we get rid of all this stuff" 😅 it's just quite painful to remove or package a new JDK right now, and it really doesn't seem like we should need more than ~3 distributions | 19:37:29 |
Infinidoge 🏳️⚧️ | No worries!
We definitely have room to trim down, like with Zulu as mentioned, that could definitely be replaced with Temurin if I'm reading things correctly. | 19:38:21 |
Infinidoge 🏳️⚧️ | I don't think we should simply remove for the sake of removing, where possible, but when it's actively a maintenance burden it's worth it. | 19:38:55 |
emily | sadly every package causes some kind of burden – if only by slowing down Hydra evaluation and build times and causing the channels to bump slower for everyone. but in this case it's a security burden too, since 22 is now EOL and someone has to go in and deal with every single copy of it and bump to 23 | 19:40:32 |
emily | it seems like the main difference between Zulu and Temurin is that the former bundles OpenJFX. I don't know if it's possible for us to use our source OpenJFX build with Temurin or not? | 19:40:55 |
Infinidoge 🏳️⚧️ | Hmm, that would be a problem | 19:41:30 |