chore: Update dependencies for Java 17 compatibility (Phase 1) #18
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
chore: Update dependencies for Java 17 compatibility (Phase 1)
Summary
This PR updates key dependencies in preparation for Java 17 migration, as requested for Phase 1. Spring Boot remains at version 2.2.0.M6 (unchanged).
Changes:
11→171.18.4→1.18.30(includes annotation processor path update)1.4.197→2.1.2141.2-groovy-2.5→2.3-groovy-3.0(both spock-core and spock-spring)1.6.2→1.13.13.0.9dependency (required for Spock 2.3 compatibility)Review & Testing Checklist for Human
🔴 CRITICAL - This PR cannot be fully verified locally due to tooling incompatibility:
Spring Boot 2.2.0.M6 (from 2019) predates Java 17 and its embedded tooling cannot handle Java 17 bytecode:
repackagewith "Unsupported class file major version 61"Required verification steps:
Run full test suite (89 unit + 22 integration tests) in an environment with Java 17 support. Consider:
-Djacoco.skip=true -Dspring-boot.repackage.skip=trueto bypass tooling issuesVerify H2 Database compatibility - This is a major version jump (1.4.197 → 2.1.214, spanning 5+ years):
Test Spock Framework compatibility - Major upgrade (1.2 → 2.3) with Groovy version change (2.5 → 3.0):
Run application end-to-end with Java 17 to ensure no runtime issues beyond tests
Decision required: Determine if Phase 2 (Spring Boot upgrade) should be prioritized sooner, as the current Spring Boot version blocks full verification of these changes
Notes
Link to Devin run: https://app.devin.ai/sessions/34a51ede9fd5477c9ea70ecaf21ab140
Requested by: Callum Miles (@callummiles)