WorldEdit 7.4.3 raises the minimum Java version from 21 to 25, but
ships as a patch bump over 7.4.2 with no callout in the release notes.
Class file evidence:
$ unzip -p worldedit-core-7.4.2.jar com/sk89q/worldedit/EditSession.class | xxd | head -1
00000000: cafe babe 0000 0041 ... # 0x41 = 65 (Java 21)
$ unzip -p worldedit-core-7.4.3.jar com/sk89q/worldedit/EditSession.class | xxd | head -1
00000000: cafe babe 0000 0045 ... # 0x45 = 69 (Java 25)
This isn't just a toolchain pin — the source itself now depends on Java 25 APIs:
ScopedValue (used in Request.java:34) — preview in 21–24, stable only in 25. Cannot be compiled on 21–24 without preview flags.
- Unnamed variables (
var _) — preview pre-22, stable in 22+. Won't compile on 21.
So 7.4.3 genuinely cannot be built or consumed by anything below JDK 25.
Impact on downstream plugins: anyone compiling against the WorldEdit API with a JDK < 25 now breaks with:
bad class file: .../worldedit-core-7.4.3.jar(.../EditSession.class)
class file has wrong version 69.0, should be 66.0
The bump appears to have come in via #2959 ("Move 21 into only old adapters, set launcher for paperweight").
A Java-floor jump of four major versions is a meaningful compatibility break — would you consider:
- Re-cutting this as 7.5.0 (or yanking 7.4.3 and re-releasing), and
- Calling out the Java 25 floor prominently in the release notes going forward?
Thanks!
WorldEdit 7.4.3 raises the minimum Java version from 21 to 25, but
ships as a patch bump over 7.4.2 with no callout in the release notes.
Class file evidence:
This isn't just a toolchain pin — the source itself now depends on Java 25 APIs:
ScopedValue(used inRequest.java:34) — preview in 21–24, stable only in 25. Cannot be compiled on 21–24 without preview flags.var _) — preview pre-22, stable in 22+. Won't compile on 21.So 7.4.3 genuinely cannot be built or consumed by anything below JDK 25.
Impact on downstream plugins: anyone compiling against the WorldEdit API with a JDK < 25 now breaks with:
The bump appears to have come in via #2959 ("Move 21 into only old adapters, set launcher for paperweight").
A Java-floor jump of four major versions is a meaningful compatibility break — would you consider:
Thanks!