Hello Marton Greber, [email protected], Zoltan Martonka, Gabriella Lotz,
Ashwani Raina, Attila Bukor, Kudu Jenkins, Abhishek Chennaka,
I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/24517
to look at the new patch set (#5).
Change subject: [java] Upgrade build to Gradle 9
......................................................................
[java] Upgrade build to Gradle 9
Bump the Gradle wrapper from 7.6.4 to 9.1.0 and update the build to the
APIs and plugin versions required by Gradle 9:
* Swap plugins that are incompatible with Gradle 9 for maintained
equivalents:
* Shadow (johnrengelman:shadow 7.1.2 ->
com.gradleup.shadow:shadow-gradle-plugin 9.4.1)
* SpotBugs (gradle.plugin.com.github.spotbugs.snom:spotbugs-gradle-plugin
4.7.5 ->
com.github.spotbugs.snom:spotbugs-gradle-plugin 6.4.7)
* protobuf plugin (0.8.18 -> 0.10.0)
* scalafmt plugin (gradle.plugin.cz.alenkacz:gradle-scalafmt 1.16.2 ->
cz.augi.gradle.scalafmt:cz.augi.gradle.scalafmt.gradle.plugin 1.21.5)
* JMH plugin (me.champeau.gradle:jmh-gradle-plugin 0.5.3 ->
me.champeau.jmh:me.champeau.jmh.gradle.plugin:0.7.3)
* bump JaCoCo (0.8.8 -> 0.8.14)
* Migrate the build scripts (artifacts, benchmarks, docs, publishing,
quality, shadow, tests) to the Gradle 9 API, including the
`url = ...` property-assignment syntax now required in repository
and other configuration blocks.
* Re-enable Javadoc generation on JDK 17 by dropping the Yetus doclet
(disabled on Java 10+) and suppressing the stricter JDK 17 doclint
checks (Xdoclint:none) to avoid a large comment-only cleanup.
* Disable SpotBugs on the generated kudu-proto classes and add a
SpotBugs exclude filter; the generated protobuf code otherwise
yields pervasive, non-actionable false positives.
* Add Jersey service-provider descriptors (META-INF/services
MessageBodyReader and MessageBodyWriter) so the providers are
discovered without classpath scanning.
* Migrate the distributed-test tasks to Gradle 9, which forbids a task
in one project from resolving another project's configuration:
- copyDistTestJars is split into a per-subproject Copy of its own
testRuntimeClasspath that the root task only aggregates.
- distTest no longer resolves sibling testRuntimeClasspaths itself;
it reads each test task's classpath after the per-subproject copy
has already resolved it in-project.
- Exclude kudu-jepsen from both (Clojure-only, all tasks disabled on
JDK 12+, never run as dist-tests): its configuration is otherwise
never resolved in-project, which would trip the same error.
* Disable scalafmt on kudu-flatbuffers: it has only generated Java
sources, and the tasks otherwise consume generateFlatBuffers' output
without a declared dependency (a hard error under Gradle 9).
* Replace the non-ASCII character literal in SparkSQLTest with
0x4e55.toChar; the upgraded scalafmt fails to tokenize the literal.
Verified the upgrade is jar-content neutral: a same-path comparison of
the produced artifacts shows every entry byte-for-byte identical except
for the two Jersey service-provider descriptors added above
(META-INF/services/javax.ws.rs.ext.MessageBodyReader and
javax.ws.rs.ext.MessageBodyWriter), which are the only new entries in
the jars.
Change-Id: I874d631ce7f4ca6527c9ffda6caef75c2976932d
---
M java/build.gradle
M java/buildSrc/build.gradle
M java/buildSrc/src/main/groovy/org/apache/kudu/gradle/DistTestTask.java
M java/config/spotbugs/excludeFilter.xml
M java/gradle/artifacts.gradle
M java/gradle/benchmarks.gradle
M java/gradle/dependencies.gradle
M java/gradle/docs.gradle
M java/gradle/publishing.gradle
M java/gradle/quality.gradle
M java/gradle/shadow.gradle
M java/gradle/tests.gradle
M java/gradle/wrapper/gradle-wrapper.properties
M java/kudu-backup/build.gradle
M java/kudu-flatbuffers/build.gradle
M java/kudu-jepsen/build.gradle
M java/kudu-proto/build.gradle
M java/kudu-spark-tools/build.gradle
M java/kudu-spark/build.gradle
M java/kudu-spark/src/test/scala/org/apache/kudu/spark/kudu/SparkSQLTest.scala
A
java/kudu-subprocess/src/main/resources/META-INF/services/javax.ws.rs.ext.MessageBodyReader
A
java/kudu-subprocess/src/main/resources/META-INF/services/javax.ws.rs.ext.MessageBodyWriter
22 files changed, 323 insertions(+), 73 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/17/24517/5
--
To view, visit http://gerrit.cloudera.org:8080/24517
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I874d631ce7f4ca6527c9ffda6caef75c2976932d
Gerrit-Change-Number: 24517
Gerrit-PatchSet: 5
Gerrit-Owner: Zoltan Chovan <[email protected]>
Gerrit-Reviewer: Abhishek Chennaka <[email protected]>
Gerrit-Reviewer: Anonymous Coward <[email protected]>
Gerrit-Reviewer: Ashwani Raina <[email protected]>
Gerrit-Reviewer: Attila Bukor <[email protected]>
Gerrit-Reviewer: Gabriella Lotz <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <[email protected]>
Gerrit-Reviewer: Zoltan Chovan <[email protected]>
Gerrit-Reviewer: Zoltan Martonka <[email protected]>