Skip to content

Commit c81519c

Browse files
Upgrade Spoon from 10.4.2 to 11.5.0 (#363)
Follow-up to #352 (stacked on it; GitHub will retarget to `main` once #352 merges). ## Problem Spoon 10.4.2 bundles JDT 3.33, which only accepts compliance levels up to 19 (`20` throws `Unrecognized option : -20`), so #352 has to cap the level read from the project's pom at 19. ## Change - `version.spoon`: 10.4.2 → **11.5.0** (JDT 3.46). It needs a Java 17+ runtime (class files are Java 17), which is fine since the verifier already targets 20. - `ComplianceLevel.MAX_SUPPORTED` (and so the default when no pom declares a version): 19 → **26**, the highest level JDT 3.46 accepts (`27` throws). No source changes were needed for the Spoon API. ## Downstream `vscode-liquidjava/server/pom.xml` declares `spoon-core` directly with `version.spoon` = 10.4.2. That direct dependency overrides the verifier's transitive one, so the server should be bumped to 11.5.0 together with the verifier version that includes this change. Otherwise projects declaring Java 20+ would make the model builder throw there. ## Testing `mvn test`: 369/369 pass (same as #352). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
1 parent 9a75214 commit c81519c

2 files changed

Lines changed: 3 additions & 3 deletions

File tree

‎liquidjava-verifier/pom.xml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,7 @@
257257
<version.junit>5.10.0</version.junit>
258258
<version.memcompiler>1.3.0</version.memcompiler>
259259
<version.commons-text>1.12.0</version.commons-text>
260-
<version.spoon>10.4.2</version.spoon>
260+
<version.spoon>11.5.0</version.spoon>
261261
<version.z3>4.8.17</version.z3>
262262
<!-- plugin versions -->
263263
<pVersion.compiler>3.8.0</pVersion.compiler>

‎liquidjava-verifier/src/main/java/liquidjava/api/ComplianceLevel.java‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@
1414
*/
1515
public final class ComplianceLevel {
1616

17-
/** Highest level accepted by Spoon 10.4.2 (JDT 3.33), also used when no pom declares one */
18-
public static final int MAX_SUPPORTED = 19;
17+
/** Highest level accepted by Spoon 11.5.0 (JDT 3.46), also used when no pom declares one */
18+
public static final int MAX_SUPPORTED = 26;
1919

2020
public static int resolve(String... paths) {
2121
return Arrays.stream(paths).map(path -> fromPom(new File(path).getAbsoluteFile())).flatMap(Optional::stream)

0 commit comments

Comments
 (0)