reposense / RepoSense

Contribution analysis tool for Git repositories
https://reposense.org
MIT License
251 stars 154 forks source link

Migrate to Java 11 Syntax and Features #2177

Closed georgetayqy closed 5 months ago

georgetayqy commented 8 months ago

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.

georgetayqy commented 5 months ago

Closing this issue as we have migrated over to Java 11, and have introduced Java 11 syntax that is non-compatible with older versions of Java.

ckcherry23 commented 5 months ago

We can create a new issue for upgrading checkstyle.