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

stevenwu pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iceberg.git

commit 58da08695b8595cd93847a7f3133edcc82a9ca5f
Author: Maximilian Michels <m...@apache.org>
AuthorDate: Thu Jul 31 16:14:20 2025 +0200

    Flink: Adjust build scripts for Flink 2.1
---
 flink/build.gradle        |  4 ++++
 flink/v2.1/build.gradle   | 36 ++++++++++++++++++------------------
 gradle.properties         |  4 ++--
 gradle/libs.versions.toml | 12 ++++++++++++
 settings.gradle           |  9 +++++++++
 5 files changed, 45 insertions(+), 20 deletions(-)

diff --git a/flink/build.gradle b/flink/build.gradle
index e315f2558d..86509c3b17 100644
--- a/flink/build.gradle
+++ b/flink/build.gradle
@@ -29,4 +29,8 @@ if (flinkVersions.contains("1.20")) {
 
 if (flinkVersions.contains("2.0")) {
   apply from: file("$projectDir/v2.0/build.gradle")
+}
+
+if (flinkVersions.contains("2.1")) {
+  apply from: file("$projectDir/v2.1/build.gradle")
 }
\ No newline at end of file
diff --git a/flink/v2.1/build.gradle b/flink/v2.1/build.gradle
index dfbaa8ff41..f24eb22e79 100644
--- a/flink/v2.1/build.gradle
+++ b/flink/v2.1/build.gradle
@@ -17,7 +17,7 @@
  * under the License.
  */
 
-String flinkMajorVersion = '2.0'
+String flinkMajorVersion = '2.1'
 String scalaVersion = System.getProperty("scalaVersion") != null ? 
System.getProperty("scalaVersion") : System.getProperty("defaultScalaVersion")
 
 project(":iceberg-flink:iceberg-flink-${flinkMajorVersion}") {
@@ -32,15 +32,15 @@ 
project(":iceberg-flink:iceberg-flink-${flinkMajorVersion}") {
     implementation project(':iceberg-parquet')
     implementation project(':iceberg-hive-metastore')
 
-    compileOnly libs.flink20.avro
+    compileOnly libs.flink21.avro
     // for dropwizard histogram metrics implementation
-    compileOnly libs.flink20.metrics.dropwizard
-    compileOnly libs.flink20.streaming.java
-    compileOnly 
"${libs.flink20.streaming.java.get().module}:${libs.flink20.streaming.java.get().getVersion()}:tests"
-    compileOnly libs.flink20.table.api.java.bridge
-    compileOnly 
"org.apache.flink:flink-table-planner_${scalaVersion}:${libs.versions.flink20.get()}"
-    compileOnly libs.flink20.connector.base
-    compileOnly libs.flink20.connector.files
+    compileOnly libs.flink21.metrics.dropwizard
+    compileOnly libs.flink21.streaming.java
+    compileOnly 
"${libs.flink21.streaming.java.get().module}:${libs.flink21.streaming.java.get().getVersion()}:tests"
+    compileOnly libs.flink21.table.api.java.bridge
+    compileOnly 
"org.apache.flink:flink-table-planner_${scalaVersion}:${libs.versions.flink21.get()}"
+    compileOnly libs.flink21.connector.base
+    compileOnly libs.flink21.connector.files
 
     compileOnly libs.hadoop3.hdfs
     compileOnly libs.hadoop3.common
@@ -71,13 +71,13 @@ 
project(":iceberg-flink:iceberg-flink-${flinkMajorVersion}") {
     // for caching in DynamicSink
     implementation libs.caffeine
 
-    testImplementation libs.flink20.connector.test.utils
-    testImplementation libs.flink20.core
-    testImplementation libs.flink20.runtime
-    testImplementation(libs.flink20.test.utilsjunit) {
+    testImplementation libs.flink21.connector.test.utils
+    testImplementation libs.flink21.core
+    testImplementation libs.flink21.runtime
+    testImplementation(libs.flink21.test.utilsjunit) {
       exclude group: 'junit'
     }
-    testImplementation(libs.flink20.test.utils) {
+    testImplementation(libs.flink21.test.utils) {
       exclude group: "org.apache.curator", module: 'curator-test'
       exclude group: 'junit'
     }
@@ -172,7 +172,7 @@ 
project(":iceberg-flink:iceberg-flink-runtime-${flinkMajorVersion}") {
     }
 
     // for dropwizard histogram metrics implementation
-    implementation libs.flink20.metrics.dropwizard
+    implementation libs.flink21.metrics.dropwizard
 
     // for integration testing with the flink-runtime-jar
     // all of those dependencies are required because the integration test 
extends FlinkTestBase
@@ -181,13 +181,13 @@ 
project(":iceberg-flink:iceberg-flink-runtime-${flinkMajorVersion}") {
     integrationImplementation project(path: 
":iceberg-flink:iceberg-flink-${flinkMajorVersion}", configuration: 
"testArtifacts")
     integrationImplementation project(path: ':iceberg-api', configuration: 
'testArtifacts')
     integrationImplementation project(path: ':iceberg-hive-metastore', 
configuration: 'testArtifacts')
-    integrationImplementation(libs.flink20.test.utils) {
+    integrationImplementation(libs.flink21.test.utils) {
       exclude group: "org.apache.curator", module: 'curator-test'
       exclude group: 'junit'
     }
 
-    integrationImplementation libs.flink20.table.api.java.bridge
-    integrationImplementation 
"org.apache.flink:flink-table-planner_${scalaVersion}:${libs.versions.flink20.get()}"
+    integrationImplementation libs.flink21.table.api.java.bridge
+    integrationImplementation 
"org.apache.flink:flink-table-planner_${scalaVersion}:${libs.versions.flink21.get()}"
 
     integrationImplementation libs.hadoop3.common
     integrationImplementation libs.hadoop3.hdfs
diff --git a/gradle.properties b/gradle.properties
index 5da56c59de..80a00f8ced 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -16,8 +16,8 @@
 jmhOutputPath=build/reports/jmh/human-readable-output.txt
 jmhJsonOutputPath=build/reports/jmh/results.json
 jmhIncludeRegex=.*
-systemProp.defaultFlinkVersions=2.0
-systemProp.knownFlinkVersions=1.19,1.20,2.0
+systemProp.defaultFlinkVersions=2.1
+systemProp.knownFlinkVersions=1.19,1.20,2.0,2.1
 systemProp.defaultSparkVersions=4.0
 systemProp.knownSparkVersions=3.4,3.5,4.0
 systemProp.defaultKafkaVersions=3
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index c8dbc511d1..73312238ac 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -49,6 +49,7 @@ findbugs-jsr305 = "3.0.2"
 flink119 =  { strictly = "1.19.2"}
 flink120 = { strictly = "1.20.1"}
 flink20 = { strictly = "2.0.0"}
+flink21 = { strictly = "2.1.0"}
 google-libraries-bom = "26.67.0"
 guava = "33.4.8-jre"
 hadoop3 = "3.4.1"
@@ -131,6 +132,12 @@ flink20-connector-files = { module = 
"org.apache.flink:flink-connector-files", v
 flink20-metrics-dropwizard = { module = 
"org.apache.flink:flink-metrics-dropwizard", version.ref = "flink20" }
 flink20-streaming-java = { module = "org.apache.flink:flink-streaming-java", 
version.ref = "flink20" }
 flink20-table-api-java-bridge = { module = 
"org.apache.flink:flink-table-api-java-bridge", version.ref = "flink20" }
+flink21-avro = { module = "org.apache.flink:flink-avro", version.ref = 
"flink21" }
+flink21-connector-base = { module = "org.apache.flink:flink-connector-base", 
version.ref = "flink21" }
+flink21-connector-files = { module = "org.apache.flink:flink-connector-files", 
version.ref = "flink21" }
+flink21-metrics-dropwizard = { module = 
"org.apache.flink:flink-metrics-dropwizard", version.ref = "flink21" }
+flink21-streaming-java = { module = "org.apache.flink:flink-streaming-java", 
version.ref = "flink21" }
+flink21-table-api-java-bridge = { module = 
"org.apache.flink:flink-table-api-java-bridge", version.ref = "flink21" }
 google-libraries-bom = { module = "com.google.cloud:libraries-bom", 
version.ref = "google-libraries-bom" }
 guava-guava = { module = "com.google.guava:guava", version.ref = "guava" }
 hadoop3-client = { module = "org.apache.hadoop:hadoop-client", version.ref = 
"hadoop3" }
@@ -195,6 +202,11 @@ flink20-core = { module = "org.apache.flink:flink-core", 
version.ref = "flink20"
 flink20-runtime = { module = "org.apache.flink:flink-runtime", version.ref = 
"flink20" }
 flink20-test-utils = { module = "org.apache.flink:flink-test-utils", 
version.ref = "flink20" }
 flink20-test-utilsjunit = { module = 
"org.apache.flink:flink-test-utils-junit", version.ref = "flink20" }
+flink21-connector-test-utils = { module = 
"org.apache.flink:flink-connector-test-utils", version.ref = "flink21" }
+flink21-core = { module = "org.apache.flink:flink-core", version.ref = 
"flink21" }
+flink21-runtime = { module = "org.apache.flink:flink-runtime", version.ref = 
"flink21" }
+flink21-test-utils = { module = "org.apache.flink:flink-test-utils", 
version.ref = "flink21" }
+flink21-test-utilsjunit = { module = 
"org.apache.flink:flink-test-utils-junit", version.ref = "flink21" }
 guava-testlib = { module = "com.google.guava:guava-testlib", version.ref = 
"guava" }
 jakarta-el-api = { module = "jakarta.el:jakarta.el-api", version.ref = 
"jakarta-el-api" }
 jakarta-servlet = {module = "jakarta.servlet:jakarta.servlet-api", version.ref 
= "jakarta-servlet-api"}
diff --git a/settings.gradle b/settings.gradle
index 57b8f7b58c..bf84ccee03 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -139,6 +139,15 @@ if (flinkVersions.contains("2.0")) {
   project(":iceberg-flink:flink-runtime-2.0").name = 
"iceberg-flink-runtime-2.0"
 }
 
+if (flinkVersions.contains("2.1")) {
+  include ":iceberg-flink:flink-2.1"
+  include ":iceberg-flink:flink-runtime-2.1"
+  project(":iceberg-flink:flink-2.1").projectDir = file('flink/v2.1/flink')
+  project(":iceberg-flink:flink-2.1").name = "iceberg-flink-2.1"
+  project(":iceberg-flink:flink-runtime-2.1").projectDir = 
file('flink/v2.1/flink-runtime')
+  project(":iceberg-flink:flink-runtime-2.1").name = 
"iceberg-flink-runtime-2.1"
+}
+
 if (sparkVersions.contains("3.4")) {
   include ":iceberg-spark:spark-3.4_${scalaVersion}"
   include ":iceberg-spark:spark-extensions-3.4_${scalaVersion}"

Reply via email to