This is an automated email from the ASF dual-hosted git repository.

MartijnVisser pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/flink-connector-kafka.git


The following commit(s) were added to refs/heads/main by this push:
     new 2d8ea909 [FLINK-40617][build] Prune and bump dependency versions in 
the root pom
2d8ea909 is described below

commit 2d8ea909127312d6b6404e7f9f18979faf9a9ed5
Author: Purushottam Sinha <[email protected]>
AuthorDate: Thu Sep 24 01:52:30 2026 +0530

    [FLINK-40617][build] Prune and bump dependency versions in the root pom
    
    Bumps dependencies that reach users through the connector's compile
    scope or affect the test JVM, and prunes dependencyManagement entries
    that only raised a transitively supplied version without reconciling a
    convergence conflict.
    
    Bumped:
    - jackson-bom 2.21.3 -> 2.22.4 (compile; not bundled, reaches users
      transitively through flink-connector-kafka).
      2.21.3 is affected by 19 Jackson advisories, eight of them high
      severity; 2.22.4 clears all of them.
    - log4j 2.25.5 -> 2.26.1, avro 1.12.0 -> 1.12.2, docker-java-api 3.5.2 ->
      3.7.1, guava 33.4.8-jre -> 33.7.2-jre, snakeyaml 2.4 -> 2.7 (all test)
    
    Dropped:
    - commons-cli, javassist and objenesis: every reactor path already resolves
      a single version (1.5.0, 3.24.0-GA, 3.4), so the pins reconciled nothing.
    - commons-codec: provided transitively through flink-dist's commons-compress
      and every reactor path already resolves it to 1.17.1, so the pin only
      raised a version nothing asked for.
    - the mockito and powermock version properties: both groups are banned by
      enforce-banned-deps, so nothing can use them.
    - the duplicate snakeyaml.version property.
    
    Left at their prior pins (kept for convergence, not raised):
    - commons-io (2.19.0) and commons-compress (1.27.1) are supplied by
      flink-dist as provided dependencies; the pins only reconcile transitive
      convergence, so bumping them changes nothing that runs on a cluster.
    - snappy-java stays at 1.1.10.7, the version kafka-clients already brings.
    
    commons-lang3 stays at 3.18.0 and moves to test scope: its one production
    call in DynamicKafkaSourceBuilder is replaced with Flink's
    StringUtils.generateRandomAlphanumericString, keeping it off every user's
    classpath. flink-core already brings 3.18.0 transitively, so there was no
    reason to raise the pin.
    
    Generated-by: Claude Code (claude-opus-4-8, claude-opus-5-5)
---
 flink-connector-kafka/pom.xml                      | 11 +++---
 .../dynamic/source/DynamicKafkaSourceBuilder.java  |  6 ++-
 pom.xml                                            | 44 +++-------------------
 3 files changed, 16 insertions(+), 45 deletions(-)

diff --git a/flink-connector-kafka/pom.xml b/flink-connector-kafka/pom.xml
index 088e950d..21a7dc47 100644
--- a/flink-connector-kafka/pom.xml
+++ b/flink-connector-kafka/pom.xml
@@ -106,11 +106,6 @@ under the License.
                        <scope>provided</scope>
                </dependency>
 
-               <dependency>
-                       <groupId>org.apache.commons</groupId>
-                       <artifactId>commons-lang3</artifactId>
-               </dependency>
-
                <dependency>
                        <groupId>com.fasterxml.jackson.core</groupId>
                        <artifactId>jackson-core</artifactId>
@@ -164,6 +159,12 @@ under the License.
 
                <!-- Tests -->
 
+               <dependency>
+                       <groupId>org.apache.commons</groupId>
+                       <artifactId>commons-lang3</artifactId>
+                       <scope>test</scope>
+               </dependency>
+
                <dependency>
                        <groupId>org.apache.kafka</groupId>
                        <artifactId>kafka-clients</artifactId>
diff --git 
a/flink-connector-kafka/src/main/java/org/apache/flink/connector/kafka/dynamic/source/DynamicKafkaSourceBuilder.java
 
b/flink-connector-kafka/src/main/java/org/apache/flink/connector/kafka/dynamic/source/DynamicKafkaSourceBuilder.java
index 2bea803f..4557226f 100644
--- 
a/flink-connector-kafka/src/main/java/org/apache/flink/connector/kafka/dynamic/source/DynamicKafkaSourceBuilder.java
+++ 
b/flink-connector-kafka/src/main/java/org/apache/flink/connector/kafka/dynamic/source/DynamicKafkaSourceBuilder.java
@@ -30,8 +30,8 @@ import 
org.apache.flink.connector.kafka.source.enumerator.initializer.NoStopping
 import 
org.apache.flink.connector.kafka.source.enumerator.initializer.OffsetsInitializer;
 import 
org.apache.flink.connector.kafka.source.reader.deserializer.KafkaRecordDeserializationSchema;
 import org.apache.flink.util.Preconditions;
+import org.apache.flink.util.StringUtils;
 
-import org.apache.commons.lang3.RandomStringUtils;
 import org.apache.kafka.clients.CommonClientConfigs;
 import org.apache.kafka.clients.consumer.ConsumerConfig;
 import org.apache.kafka.clients.consumer.OffsetResetStrategy;
@@ -41,6 +41,7 @@ import org.slf4j.LoggerFactory;
 
 import java.util.Locale;
 import java.util.Properties;
+import java.util.Random;
 import java.util.Set;
 import java.util.regex.Pattern;
 
@@ -279,7 +280,8 @@ public class DynamicKafkaSourceBuilder<T> {
                 KafkaSourceOptions.CLIENT_ID_PREFIX.key(),
                 props.containsKey(ConsumerConfig.GROUP_ID_CONFIG)
                         ? props.getProperty(ConsumerConfig.GROUP_ID_CONFIG)
-                        : "DynamicKafkaSource-" + 
RandomStringUtils.randomAlphabetic(8),
+                        : "DynamicKafkaSource-"
+                                + 
StringUtils.generateRandomAlphanumericString(new Random(), 8),
                 false);
     }
 
diff --git a/pom.xml b/pom.xml
index c7b8143b..96bd6c66 100644
--- a/pom.xml
+++ b/pom.xml
@@ -57,38 +57,31 @@ under the License.
                <kafka.version>4.2.0</kafka.version>
 
                <!-- Other Dependencies -->
-               <avro.version>1.12.0</avro.version>
+               <avro.version>1.12.2</avro.version>
                <byte-buddy.version>1.12.10</byte-buddy.version>
-               <commons-cli.version>1.9.0</commons-cli.version>
-               <commons-codec.version>1.18.0</commons-codec.version>
                <commons-compress.version>1.27.1</commons-compress.version>
                <commons-io.version>2.19.0</commons-io.version>
                <commons-lang3.version>3.18.0</commons-lang3.version>
                <httpcore.version>4.4.16</httpcore.version>
                <httpclient.version>4.5.14</httpclient.version>
-               <jackson-bom.version>2.21.3</jackson-bom.version>
-               <javassist.version>3.30.2-GA</javassist.version>
+               <jackson-bom.version>2.22.4</jackson-bom.version>
                <jsr305.version>1.3.9</jsr305.version>
                <kryo.version>5.6.2</kryo.version>
-               <log4j.version>2.25.5</log4j.version>
-               <objenesis.version>3.4</objenesis.version>
+               <log4j.version>2.26.1</log4j.version>
                <scala.binary.version>2.12</scala.binary.version>
                
<scala-library.version>${scala.binary.version}.20</scala-library.version>
                
<scala-reflect.version>${scala.binary.version}.20</scala-reflect.version>
                <slf4j.version>1.7.36</slf4j.version>
-               <snakeyaml.version>2.4</snakeyaml.version>
+               <snakeyaml.version>2.7</snakeyaml.version>
                <snappy-java.version>1.1.10.7</snappy-java.version>
 
                <!-- Test Dependencies -->
                <archunit.version>1.4.1</archunit.version>
                <assertj.version>3.27.7</assertj.version>
-               <docker-java-api.version>3.5.2</docker-java-api.version>
-               <guava.version>33.4.8-jre</guava.version>
+               <docker-java-api.version>3.7.1</docker-java-api.version>
+               <guava.version>33.7.2-jre</guava.version>
                <hamcrest.version>1.3</hamcrest.version>
                <junit5.version>5.13.3</junit5.version>
-               <mockito.version>5.18.0</mockito.version>
-               <powermock.version>2.0.9</powermock.version>
-               <snakeyaml.version>2.4</snakeyaml.version>
                <testcontainers.version>1.21.4</testcontainers.version>
 
                <!-- Plugins -->
@@ -273,12 +266,6 @@ under the License.
                                <version>${byte-buddy.version}</version>
                        </dependency>
 
-                       <dependency>
-                               <groupId>commons-cli</groupId>
-                               <artifactId>commons-cli</artifactId>
-                               <version>${commons-cli.version}</version>
-                       </dependency>
-
                        <dependency>
                                <groupId>org.scala-lang</groupId>
                                <artifactId>scala-reflect</artifactId>
@@ -303,12 +290,6 @@ under the License.
                                <version>${snappy-java.version}</version>
                        </dependency>
 
-                       <dependency>
-                               <groupId>org.javassist</groupId>
-                               <artifactId>javassist</artifactId>
-                               <version>${javassist.version}</version>
-                       </dependency>
-
                        <dependency>
                                <groupId>org.apache.avro</groupId>
                                <artifactId>avro</artifactId>
@@ -387,12 +368,6 @@ under the License.
                                <version>${jsr305.version}</version>
                        </dependency>
 
-                       <dependency>
-                               <groupId>commons-codec</groupId>
-                               <artifactId>commons-codec</artifactId>
-                               <version>${commons-codec.version}</version>
-                       </dependency>
-
                        <dependency>
                                <groupId>org.apache.httpcomponents</groupId>
                                <artifactId>httpcore</artifactId>
@@ -470,13 +445,6 @@ under the License.
                                <version>${kryo.version}</version>
                        </dependency>
 
-                       <!-- For dependency convergence -->
-                       <dependency>
-                               <groupId>org.objenesis</groupId>
-                               <artifactId>objenesis</artifactId>
-                               <version>${objenesis.version}</version>
-                       </dependency>
-
                        <!-- For dependency convergence -->
                        <dependency>
                                <groupId>org.yaml</groupId>

Reply via email to