From d6c0317170637b2da08b920f0c07b14a4afc533c Mon Sep 17 00:00:00 2001 From: Shehzaad Nakhoda Date: Tue, 23 Feb 2021 17:19:59 -0800 Subject: [PATCH 1/3] [BEAM-10961] enable strict dependency checking for sdks/java/io/kafka --- sdks/java/io/kafka/build.gradle | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/sdks/java/io/kafka/build.gradle b/sdks/java/io/kafka/build.gradle index a500ddd49fb5..4d98135f397a 100644 --- a/sdks/java/io/kafka/build.gradle +++ b/sdks/java/io/kafka/build.gradle @@ -20,6 +20,7 @@ import java.util.stream.Collectors plugins { id 'org.apache.beam.module' } applyJavaNature( + enableStrictDependencies:true, automaticModuleName: 'org.apache.beam.sdk.io.kafka', mavenRepositories: [ [id: 'io.confluent', url: 'https://packages.confluent.io/maven/'] @@ -49,6 +50,9 @@ dependencies { compile library.java.vendored_guava_26_0_jre compile project(path: ":sdks:java:core", configuration: "shadow") compile project(":sdks:java:expansion-service") + permitUnusedDeclared project(":sdks:java:expansion-service") + compile "org.apache.kafka:kafka-clients:2.4.1" + compile library.java.avro // Get back to "provided" since 2.14 provided library.java.kafka_clients compile library.java.slf4j_api @@ -57,6 +61,13 @@ dependencies { compile library.java.jackson_databind compile "org.springframework:spring-expression:4.3.18.RELEASE" compile ("io.confluent:kafka-avro-serializer:5.3.2") { + // zookeeper depends on "spotbugs-annotations:3.1.9" which clashes with current + // "spotbugs-annotations:3.1.12" used in Beam. Not required. + exclude group: "org.apache.zookeeper", module: "zookeeper" + // "kafka-clients" has to be provided since user can use its own version. + exclude group: "org.apache.kafka", module: "kafka-clients" + } + compile ("io.confluent:kafka-schema-registry-client:5.3.2") { // It depends on "spotbugs-annotations:3.1.9" which clashes with current // "spotbugs-annotations:3.1.12" used in Beam. Not required. exclude group: "org.apache.zookeeper", module: "zookeeper" @@ -71,8 +82,6 @@ dependencies { // For testing Cross-language transforms testCompile project(":runners:core-construction-java") testCompile library.java.avro - testCompile library.java.hamcrest_core - testCompile library.java.hamcrest_library testCompile library.java.junit testCompile library.java.powermock testCompile library.java.powermock_mockito From 82d173b94e6956a6352b2a79c9e2f53db82dc81a Mon Sep 17 00:00:00 2001 From: Shehzaad Nakhoda Date: Wed, 24 Feb 2021 00:48:02 -0800 Subject: [PATCH 2/3] [BEAM-10961] (1) fix spacing (2) remove kafka-clients dependency (3) add reference to BEAM-11761 --- sdks/java/io/kafka/build.gradle | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/sdks/java/io/kafka/build.gradle b/sdks/java/io/kafka/build.gradle index 4d98135f397a..51bb13e2c3fa 100644 --- a/sdks/java/io/kafka/build.gradle +++ b/sdks/java/io/kafka/build.gradle @@ -20,7 +20,7 @@ import java.util.stream.Collectors plugins { id 'org.apache.beam.module' } applyJavaNature( - enableStrictDependencies:true, + enableStrictDependencies: true, automaticModuleName: 'org.apache.beam.sdk.io.kafka', mavenRepositories: [ [id: 'io.confluent', url: 'https://packages.confluent.io/maven/'] @@ -50,8 +50,7 @@ dependencies { compile library.java.vendored_guava_26_0_jre compile project(path: ":sdks:java:core", configuration: "shadow") compile project(":sdks:java:expansion-service") - permitUnusedDeclared project(":sdks:java:expansion-service") - compile "org.apache.kafka:kafka-clients:2.4.1" + permitUnusedDeclared project(":sdks:java:expansion-service") // BEAM-11761 compile library.java.avro // Get back to "provided" since 2.14 provided library.java.kafka_clients From f6bee0b0696f09a50e865303f8f22fa1ba038d9f Mon Sep 17 00:00:00 2001 From: Shehzaad Nakhoda Date: Wed, 24 Feb 2021 05:04:06 -0800 Subject: [PATCH 3/3] Trigger Build