Skip to content

Conversation

@devin-ai-integration
Copy link

@devin-ai-integration devin-ai-integration bot commented Oct 23, 2025

Update Java version from 11 to 17 (Step 1 of Migration)

Summary

This PR updates the Java version from 11 to 17 across all configuration files and documentation as the first step of the Java 11 to 17 migration. The changes include:

Core Java Version Updates:

  • Updated sourceCompatibility and targetCompatibility to '17' in build.gradle
  • Updated GitHub Actions workflow to use JDK 17
  • Updated README documentation to reflect Java 17 requirement

Additional Infrastructure Updates:

  • Updated GitHub Actions dependencies (checkout, setup-java, cache) from v2 to v4 to fix CI blocker (v2 was deprecated and disabled by GitHub)

CI Status: ✅ All checks passing - build and tests complete successfully with Java 17

Review & Testing Checklist for Human

⚠️ Important: During local testing, I encountered a Spotless plugin compatibility issue with Java 17, but CI passed. This needs verification:

  • Run Spotless locally to verify it works with Java 17: ./gradlew spotlessCheck or ./gradlew spotlessJavaApply
  • Run full build locally (not just tests): ./gradlew clean build to ensure all build steps work
  • Test the running application with Java 17: Start the app with ./gradlew bootRun and verify basic functionality (e.g., http://localhost:8080/tags)
  • Verify team compatibility: Ensure other developers can successfully build and run with Java 17 installed

Recommended Test Plan

  1. Install Java 17 locally
  2. Run ./gradlew clean build (full build including Spotless)
  3. Run ./gradlew bootRun and test the application endpoints
  4. Verify database migrations work correctly
  5. Run integration tests if available

Notes

  • This is Step 1 of the Java migration - further dependency updates may be needed in subsequent steps
  • The Spotless plugin (v6.2.1 in build.gradle) may need to be updated to a newer version for full Java 17 compatibility, though CI currently passes
  • Spring Boot 2.6.3 officially supports Java 17, so that should be fine
  • The GitHub Actions v4 updates were necessary infrastructure maintenance and are recommended regardless of the Java upgrade

Link to Devin run: https://app.devin.ai/sessions/bbbc1a4c42684a8682808fb037767670
Requested by: Alex Peng (@alexjpeng)

- Update sourceCompatibility and targetCompatibility in build.gradle
- Update GitHub Actions workflow to use JDK 17
- Update README documentation to reflect Java 17 requirement

Co-Authored-By: Alex Peng <alexander.j.peng@gmail.com>
@devin-ai-integration
Copy link
Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

- Update actions/checkout from v2 to v4
- Update actions/setup-java from v2 to v4
- Update actions/cache from v2 to v4 (required - v2 has been deprecated and disabled by GitHub)

This fixes the CI failure that was preventing the Java 17 upgrade from being tested.

Co-Authored-By: Alex Peng <alexander.j.peng@gmail.com>
@abhay-codeium
Copy link

This requires further testing, please look and improve for coverage

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant