RepoSense icon indicating copy to clipboard operation
RepoSense copied to clipboard

Migrate to Java 11 Syntax and Features

Open georgetayqy opened this issue 10 months ago • 0 comments

What feature(s) would you like to see in RepoSense

The current language support on which our codebase is written is based on Java 8. However, we should look into migrating to Java 11 LTS for better security, features and APIs.

EDIT: After checking the API documentation, it appears that the HttpServer implementation introduced in JDK 11 is part of the com.sun package, which is discouraged from use due to the JRE-specific implementation of these packages, meaning that users of other JREs other than openjdk may not be able to use it without breaking. As such, it might not be prudent to change the existing HTTP server packages that we are using right now for the new, implementation-specific HTTP server internal package offered by the JDK.

Is the feature request related to a problem?

Related to #1304.

If possible, describe the solution

We could refer to these websites on the new features introduced in Java 9, Java 10 and Java 11, and evaluate if the new features offered by Java 9, 10 and 11 can be implemented into the current codebase.

If applicable, describe alternatives you've considered

N/A

Additional context

This is potentially a large issue and may require multiple issues and PRs to resolve. The following are tasks that we need to complete to successfully migrate from Java 8 language support to Java 11 language support.

  • [x] Update CI/CD to Java 11 [in progress at #2183, related to #2161 and #2172]
  • [ ] Update APIs to Java 11
  • [ ] Update Syntax to Java 11

georgetayqy avatar Mar 28 '24 14:03 georgetayqy