This PR performs gradle7 upgrade for the repo. The upgrade is done from gradle 6.9 to 7.6.
Here are the main changes in this PR.
Gradle 7 specific configuration and deprecation update as per the gradle 7 upgrade wiki.
Although existing spring boot version 2.6.6 is compatible with gradle 7.x, faced some issues during the upgrade. So upgraded spring boot version to 2.7.8 and this version seems to be working well with gradle 7.x. Also it would be easier to upgrade gradle 8.x as the supported spring boot version is 2.7.9 or 2.7.10. Upgrading directly to 2.7.10 or higher is failing due to old Netty version dependency which are pulled in from hadoop 2.10.0. Netty version 4.1.86.Final which is pulled in by spring boot version 2.7.8 is working well with this upgrade whereas higher version of Netty introduces additional issues. Refer to the spring boot issue and Spring 2.7.8 system requirements. Also refer to spring boot 2.7.x dependency versions.
Upgraded spring boot gradle plugin to 2.7.8
Upgraded johnrengelman shadow plugin version to 7.1.2.
Classifier change for shadow jars. Added uber classifier for all the shadow jars.
Boot jar remains unchanged and no classifier added. Regular jar continues to have lib classifier.
Gradle publication changes to ensure maven publish works.
Changes
[ ] Client-facing API Changes
[ ] Internal API Changes
[ ] Bug Fixes
[ ] New Features
[ ] Performance Improvements
[ ] Code Style
[ ] Refactoring
[ ] Documentation
[ ] Tests
[x] Upgrade
For all the boxes checked, please include additional details of the changes made in this pull request.
Testing Done
[ ] Manually Tested on local docker setup. Please include commands ran, and their output.
[ ] Added new tests for the changes made.
[ ] Updated existing tests to reflect the changes made.
[ ] No tests added or updated. Please explain why. If unsure, please feel free to ask for help.
[x] Some other form of testing like staging or soak time in production. Please explain.
./gradlew clean build working and tests are passing.
Tested using local docker setup and able to perform table operation after gradle 7 upgrade.
Ensured that gradle maven publish works by publishing to the local repository.
./gradlew publishToMavenLocal -Pversion=1.0.0-snapshot
Ensured that the artifacts produced after the upgrade remains the same and there is no significant increase in size.
Summary
This PR performs gradle7 upgrade for the repo. The upgrade is done from gradle 6.9 to 7.6.
Here are the main changes in this PR.
2.6.6
is compatible with gradle7.x
, faced some issues during the upgrade. So upgraded spring boot version to2.7.8
and this version seems to be working well with gradle7.x
. Also it would be easier to upgrade gradle8.x
as the supported spring boot version is2.7.9
or2.7.10
. Upgrading directly to2.7.10
or higher is failing due to old Netty version dependency which are pulled in from hadoop2.10.0
. Netty version4.1.86.Final
which is pulled in by spring boot version2.7.8
is working well with this upgrade whereas higher version of Netty introduces additional issues. Refer to the spring boot issue and Spring 2.7.8 system requirements. Also refer to spring boot 2.7.x dependency versions.2.7.8
7.1.2
.uber
classifier for all the shadow jars.lib
classifier.Changes
For all the boxes checked, please include additional details of the changes made in this pull request.
Testing Done
[ ] Manually Tested on local docker setup. Please include commands ran, and their output.
[ ] Added new tests for the changes made.
[ ] Updated existing tests to reflect the changes made.
[ ] No tests added or updated. Please explain why. If unsure, please feel free to ask for help.
[x] Some other form of testing like staging or soak time in production. Please explain.
./gradlew clean build
working and tests are passing.Tested using local docker setup and able to perform table operation after gradle 7 upgrade.
Ensured that gradle maven publish works by publishing to the local repository. ./gradlew publishToMavenLocal -Pversion=1.0.0-snapshot
Ensured that the artifacts produced after the upgrade remains the same and there is no significant increase in size.
Before upgrade:
After upgrade:
For all the boxes checked, include a detailed description of the testing done for the changes made in this pull request.
Additional Information
For all the boxes checked, include additional details of the changes made in this pull request.