-
Notifications
You must be signed in to change notification settings - Fork 18
Upgrade to Gradle 9.2.1 and enable Java 21 build support #312
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request upgrades the project from Gradle 7.4.2 to 9.2.1, enabling builds on Java 21 while maintaining Java 8 bytecode compatibility for the generated artifacts.
Key changes:
- Gradle wrapper upgraded to 9.2.1 with updated wrapper scripts and properties
- Build toolchain updated to Java 21 in CI workflows
- Java compilation configured with
options.release = 8instead of deprecatedsourceCompatibility/targetCompatibility - Shadow plugin upgraded from 7.1.2 to 9.3.1 and nexus-publish plugin to 2.0.0
- Fixed Gradle 9 deprecations: property assignments, archive classifiers, JaCoCo report configuration
- Updated
ShadowRelocationtask to work with Gradle 9 API changes
Reviewed changes
Copilot reviewed 13 out of 15 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| gradle/wrapper/gradle-wrapper.properties | Upgrades Gradle distribution to 9.2.1 and adds security properties |
| gradlew, gradlew.bat | Updates wrapper scripts to Gradle 9.2.1 versions with improved error handling and SPDX license identifier |
| gradle/wrapper/gradle-wrapper.jar | Binary update for Gradle 9.2.1 wrapper |
| build.gradle | Updates nexus-publish plugin to 2.0.0 and adds compiler args to suppress options warnings |
| buildSrc/build.gradle | Upgrades shadow plugin to 9.3.1 and fixes property assignment syntax |
| buildSrc/src/main/groovy/com/appland/tasks/ShadowRelocation.groovy | Fixes API compatibility with Gradle 9's Property API |
| runtime/build.gradle | Removes deprecated jcenter repository and updates Java compatibility to use options.release = 8 |
| annotation/build.gradle | Updates Java compatibility settings and fixes deprecated property assignments (classifier, groupId, artifactId) |
| agent/build.gradle | Updates shadow plugin usage, Java compatibility, adds JUnit platform launcher dependency, and modernizes property syntax |
| .github/workflows/build-and-test.yml | Updates CI to use Java 21 for builds and adds Java 21 to test matrix |
| .github/workflows/release.yml | Updates release workflow to use Java 21 |
| agent/test/jdbc/gradle/wrapper/gradle-wrapper.properties | Uses Gradle 8.5 for test code incompatible with Gradle 9 |
| agent/test/httpcore/httpcore.bats | Improves path handling and changes server port configuration |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
510aaa6 to
ae72bbc
Compare
The code previously used 9090 which is memorable enough to conflict with other code that could be running on developer machines. New default of 46406 is unlikely to hit such conflicts. Also, some small improvements in the httpcore bats script.
43b4ad0 to
876237f
Compare
Upgrades the project to use Gradle 9.2.1, allowing the build to run on Java 21 environments while maintaining Java 8 bytecode compatibility. Key changes: - Upgrade Gradle Wrapper to 9.2.1. - Update CI workflows to use Java 21. - Set `options.release = 8` to ensure Java 8 compatibility (replaces obsolete source/target compatibility). - content: upgrade `shadow` plugin to 9.3.1 and `nexus-publish` to 2.0.0. - Fix Gradle 9 deprecation warnings (property assignment syntax). - Fix `ShadowRelocation` task compatibility with new Gradle API. - Bump Gradle version to 8.5 in some test code incompatible with 9. - Make smoke tests (event, access) self-contained and directory-agnostic, removing the need for 'gradlew testClasses' during test installation.
876237f to
9a11b9e
Compare
Upgrades the project to use Gradle 9.2.1, allowing the build to run on Java 21 environments while maintaining Java 8 bytecode compatibility.
Key changes:
options.release = 8to ensure Java 8 compatibility (replaces obsolete source/target compatibility).shadowplugin to 9.3.1 andnexus-publishto 2.0.0.ShadowRelocationtask compatibility with new Gradle API.