Jinwoo Hwang created GEODE-10462:
------------------------------------

             Summary: Upgrade Gradle to 7.3.3 to Enable Java 17 and Jakarta EE 
9 Compatibility
                 Key: GEODE-10462
                 URL: https://issues.apache.org/jira/browse/GEODE-10462
             Project: Geode
          Issue Type: Improvement
            Reporter: Jinwoo Hwang


As part of our strategic modernization of the build and runtime environment, we 
propose upgrading the Gradle build tool from its current version to {*}Gradle 
7.3.3{*}. This upgrade is a foundational step toward enabling support for *Java 
17* and {*}Jakarta EE 9{*}, both of which introduce significant language, 
performance, and API improvements.

Gradle 7.3.3 offers compatibility with Java 17 and includes enhancements in 
dependency resolution, configuration caching, and improved support for JVM 
toolchains. These features are critical for ensuring a smooth transition to 
newer Java versions and aligning with Jakarta EE 9’s namespace changes 
({{{}javax.*{}}} to {{{}jakarta.*{}}}), which require updated tooling and 
dependency management.

{*}Motivation{*}:
 * {*}Java 17 Preparation{*}: Gradle 7.3.3 is one of the earliest versions that 
fully supports Java 17 features, including sealed classes, pattern matching, 
and enhanced performance optimizations.
 * {*}Jakarta EE 9 Migration{*}: Jakarta EE 9 introduces a major namespace 
shift. Gradle 7.3.3 provides better support for managing dependencies and 
plugins that are compatible with this change.
 * {*}Toolchain Support{*}: Enables use of Gradle’s JVM toolchain feature to 
explicitly define Java versions for compilation and testing, reducing 
environment inconsistencies.
 * {*}Build Performance{*}: Improved configuration caching and dependency 
resolution mechanisms help reduce build times and improve developer 
productivity.
 * {*}Security & Stability{*}: Staying current with build tools helps mitigate 
known vulnerabilities and ensures compatibility with modern CI/CD pipelines.

{*}Impact{*}:
 * May require updates to existing build scripts and plugins to ensure 
compatibility.
 * Will unblock future upgrades to Java 17 and Jakarta EE 9.
 * Expected to improve build reliability and maintainability.

{*}Acceptance Criteria{*}:
 * Gradle upgraded to 7.3.3 across all modules.
 * Build scripts validated and updated for compatibility.
 * CI pipelines updated and verified.
 * Documentation updated to reflect the new Gradle version.
 * Successful builds and test runs using Java 17 toolchain.

{*}Additional Notes{*}:

This upgrade is part of a broader initiative to modernize our development 
stack. Think of it as replacing the foundation before renovating the house — 
necessary, not flashy, but critical for long-term stability and scalability.
 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to