This is an automated email from the ASF dual-hosted git repository. chesnay pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/flink.git
commit 49dcdf0fc2a5f113c0c1558b65df4ffa587ff72a Author: Chesnay Schepler <ches...@apache.org> AuthorDate: Thu Jun 16 12:22:08 2022 +0200 [FLINK-28203][build] Mark bundled dependencies as optional --- flink-connectors/flink-connector-files/pom.xml | 1 + flink-connectors/flink-connector-hive/pom.xml | 6 ++++ .../flink-sql-connector-hbase-1.4/pom.xml | 1 + .../flink-sql-connector-hbase-2.2/pom.xml | 1 + .../flink-sql-connector-hive-2.3.9/pom.xml | 3 ++ .../flink-sql-connector-hive-3.1.3/pom.xml | 6 ++++ flink-connectors/flink-sql-connector-kafka/pom.xml | 1 + flink-dist-scala/pom.xml | 2 ++ flink-dist/pom.xml | 34 ++++++++++++++++++++++ .../flink-examples-streaming-state-machine/pom.xml | 1 + flink-filesystems/flink-azure-fs-hadoop/pom.xml | 3 ++ flink-filesystems/flink-fs-hadoop-shaded/pom.xml | 1 + flink-filesystems/flink-gs-fs-hadoop/pom.xml | 4 +++ flink-filesystems/flink-oss-fs-hadoop/pom.xml | 4 +++ flink-filesystems/flink-s3-fs-hadoop/pom.xml | 1 + flink-filesystems/flink-s3-fs-presto/pom.xml | 20 ++++++++----- flink-formats/flink-csv/pom.xml | 1 + flink-formats/flink-json/pom.xml | 1 + .../flink-sql-avro-confluent-registry/pom.xml | 1 + flink-formats/flink-sql-avro/pom.xml | 1 + flink-formats/flink-sql-csv/pom.xml | 1 + flink-formats/flink-sql-json/pom.xml | 1 + flink-formats/flink-sql-orc/pom.xml | 1 + flink-formats/flink-sql-parquet/pom.xml | 2 ++ flink-formats/flink-sql-protobuf/pom.xml | 1 + flink-kubernetes/pom.xml | 1 + flink-metrics/flink-metrics-datadog/pom.xml | 1 + flink-metrics/flink-metrics-graphite/pom.xml | 3 ++ flink-metrics/flink-metrics-influxdb/pom.xml | 1 + flink-metrics/flink-metrics-prometheus/pom.xml | 3 ++ flink-python/pom.xml | 8 +++++ flink-rpc/flink-rpc-akka/pom.xml | 6 ++++ flink-runtime/pom.xml | 1 + flink-table/flink-sql-client/pom.xml | 3 ++ flink-table/flink-sql-gateway/pom.xml | 1 + flink-table/flink-sql-jdbc-driver-bundle/pom.xml | 7 +++++ flink-table/flink-table-api-java-uber/pom.xml | 5 ++++ flink-table/flink-table-code-splitter/pom.xml | 1 + .../flink-table-planner-loader-bundle/pom.xml | 1 + flink-table/flink-table-planner/pom.xml | 4 +++ flink-table/flink-table-runtime/pom.xml | 4 +++ pom.xml | 16 ++++++++++ 42 files changed, 158 insertions(+), 7 deletions(-) diff --git a/flink-connectors/flink-connector-files/pom.xml b/flink-connectors/flink-connector-files/pom.xml index d82646e0af8..22931f20945 100644 --- a/flink-connectors/flink-connector-files/pom.xml +++ b/flink-connectors/flink-connector-files/pom.xml @@ -55,6 +55,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-connector-base</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> diff --git a/flink-connectors/flink-connector-hive/pom.xml b/flink-connectors/flink-connector-hive/pom.xml index 80011b55b97..5a5df8fd3c4 100644 --- a/flink-connectors/flink-connector-hive/pom.xml +++ b/flink-connectors/flink-connector-hive/pom.xml @@ -232,12 +232,14 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-hadoop-compatibility_${scala.binary.version}</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-hadoop-bulk</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> @@ -252,6 +254,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-orc</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>org.apache.orc</groupId> @@ -264,6 +267,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-orc-nohive</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>org.apache.orc</groupId> @@ -276,6 +280,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-parquet</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- File systems --> @@ -284,6 +289,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-hadoop-fs</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- Hadoop --> diff --git a/flink-connectors/flink-sql-connector-hbase-1.4/pom.xml b/flink-connectors/flink-sql-connector-hbase-1.4/pom.xml index 6a39a9136a3..effb92f0807 100644 --- a/flink-connectors/flink-sql-connector-hbase-1.4/pom.xml +++ b/flink-connectors/flink-sql-connector-hbase-1.4/pom.xml @@ -41,6 +41,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-connector-hbase-1.4</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> diff --git a/flink-connectors/flink-sql-connector-hbase-2.2/pom.xml b/flink-connectors/flink-sql-connector-hbase-2.2/pom.xml index d0722a57fde..fb29cc28674 100644 --- a/flink-connectors/flink-sql-connector-hbase-2.2/pom.xml +++ b/flink-connectors/flink-sql-connector-hbase-2.2/pom.xml @@ -41,6 +41,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-connector-hbase-2.2</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> diff --git a/flink-connectors/flink-sql-connector-hive-2.3.9/pom.xml b/flink-connectors/flink-sql-connector-hive-2.3.9/pom.xml index a8135e0a818..ed986f6d150 100644 --- a/flink-connectors/flink-sql-connector-hive-2.3.9/pom.xml +++ b/flink-connectors/flink-sql-connector-hive-2.3.9/pom.xml @@ -43,12 +43,14 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-connector-hive_${scala.binary.version}</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-exec</artifactId> <version>2.3.9</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>log4j</groupId> @@ -82,6 +84,7 @@ under the License. <groupId>org.antlr</groupId> <artifactId>antlr-runtime</artifactId> <version>3.5.2</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> diff --git a/flink-connectors/flink-sql-connector-hive-3.1.3/pom.xml b/flink-connectors/flink-sql-connector-hive-3.1.3/pom.xml index e7d932d2d2c..4b8280cf839 100644 --- a/flink-connectors/flink-sql-connector-hive-3.1.3/pom.xml +++ b/flink-connectors/flink-sql-connector-hive-3.1.3/pom.xml @@ -43,12 +43,14 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-connector-hive_${scala.binary.version}</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.hive</groupId> <artifactId>hive-exec</artifactId> <version>3.1.3</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>log4j</groupId> @@ -82,6 +84,7 @@ under the License. <groupId>org.antlr</groupId> <artifactId>antlr-runtime</artifactId> <version>3.5.2</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- hadoop dependency to make the copied code compile --> @@ -122,6 +125,7 @@ under the License. <groupId>org.apache.thrift</groupId> <artifactId>libfb303</artifactId> <version>0.9.3</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- avro is included in hive-exec. we use the same dependencies but with a different version --> @@ -129,6 +133,7 @@ under the License. <groupId>org.apache.avro</groupId> <artifactId>avro</artifactId> <version>1.8.2</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> @@ -136,6 +141,7 @@ under the License. <artifactId>avro-mapred</artifactId> <classifier>hadoop2</classifier> <version>1.8.2</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>org.mortbay.jetty</groupId> diff --git a/flink-connectors/flink-sql-connector-kafka/pom.xml b/flink-connectors/flink-sql-connector-kafka/pom.xml index a8768a61907..edfdb6717c9 100644 --- a/flink-connectors/flink-sql-connector-kafka/pom.xml +++ b/flink-connectors/flink-sql-connector-kafka/pom.xml @@ -43,6 +43,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-connector-kafka</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> diff --git a/flink-dist-scala/pom.xml b/flink-dist-scala/pom.xml index a01a23a08d2..d6bec0c71c4 100644 --- a/flink-dist-scala/pom.xml +++ b/flink-dist-scala/pom.xml @@ -40,6 +40,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-scala_${scala.binary.version}</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <!-- transitive Flink dependencies are provided at runtime --> @@ -52,6 +53,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-streaming-scala_${scala.binary.version}</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <!-- transitive Flink dependencies are provided at runtime --> diff --git a/flink-dist/pom.xml b/flink-dist/pom.xml index 89b80f1a5f4..84219b323e7 100644 --- a/flink-dist/pom.xml +++ b/flink-dist/pom.xml @@ -51,84 +51,98 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-core</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-java</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-runtime</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-runtime-web</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-optimizer</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-clients</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-streaming-java</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-metrics-core</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-container</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-statebackend-rocksdb</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-statebackend-changelog</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-dstl-dfs</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-kubernetes</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-yarn</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>org.apache.hadoop</groupId> @@ -141,6 +155,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-connector-base</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- Default file system support. The Hadoop dependency --> @@ -150,6 +165,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-hadoop-fs</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- Concrete logging framework - we add this only here (and not in the @@ -454,6 +470,18 @@ under the License. <!-- this entry exists to prevent a compile dependency from slipping through --> <scope>provided</scope> </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + <version>${slf4j.version}</version> + <optional>${flink.markBundledAsOptional}</optional> + </dependency> + <dependency> + <groupId>com.google.code.findbugs</groupId> + <artifactId>jsr305</artifactId> + <version>1.3.9</version> + <optional>${flink.markBundledAsOptional}</optional> + </dependency> <!-- test dependencies --> @@ -480,6 +508,12 @@ under the License. <version>${project.version}</version> <scope>provided</scope> </dependency> + <dependency> + <groupId>org.objenesis</groupId> + <artifactId>objenesis</artifactId> + <version>2.1</version> + <optional>${flink.markBundledAsOptional}</optional> + </dependency> </dependencies> </dependencyManagement> diff --git a/flink-examples/flink-examples-build-helper/flink-examples-streaming-state-machine/pom.xml b/flink-examples/flink-examples-build-helper/flink-examples-streaming-state-machine/pom.xml index e4780fd9edd..8b12a15c4d0 100644 --- a/flink-examples/flink-examples-build-helper/flink-examples-streaming-state-machine/pom.xml +++ b/flink-examples/flink-examples-build-helper/flink-examples-streaming-state-machine/pom.xml @@ -36,6 +36,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-examples-streaming</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> diff --git a/flink-filesystems/flink-azure-fs-hadoop/pom.xml b/flink-filesystems/flink-azure-fs-hadoop/pom.xml index 51ae631a5f1..ce13333ee45 100644 --- a/flink-filesystems/flink-azure-fs-hadoop/pom.xml +++ b/flink-filesystems/flink-azure-fs-hadoop/pom.xml @@ -51,18 +51,21 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-hadoop-fs</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-fs-hadoop-shaded</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-azure</artifactId> <version>${fs.hadoopshaded.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>org.apache.hadoop</groupId> diff --git a/flink-filesystems/flink-fs-hadoop-shaded/pom.xml b/flink-filesystems/flink-fs-hadoop-shaded/pom.xml index c4daca5e1a5..6534045bef6 100644 --- a/flink-filesystems/flink-fs-hadoop-shaded/pom.xml +++ b/flink-filesystems/flink-fs-hadoop-shaded/pom.xml @@ -52,6 +52,7 @@ under the License. <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>${fs.hadoopshaded.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>jdk.tools</groupId> diff --git a/flink-filesystems/flink-gs-fs-hadoop/pom.xml b/flink-filesystems/flink-gs-fs-hadoop/pom.xml index 724501fea84..2563dfd3415 100644 --- a/flink-filesystems/flink-gs-fs-hadoop/pom.xml +++ b/flink-filesystems/flink-gs-fs-hadoop/pom.xml @@ -53,18 +53,21 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-hadoop-fs</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-fs-hadoop-shaded</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-storage</artifactId> <version>${fs.gs.sdk.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <!-- the following conflict with flink-fs-hadoop-shaded so exclude here --> <exclusion> @@ -99,6 +102,7 @@ under the License. <groupId>com.google.cloud.bigdataoss</groupId> <artifactId>gcs-connector</artifactId> <version>${fs.gs.connector.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <!-- the following conflict with flink-fs-hadoop-shaded so exclude here --> <exclusion> diff --git a/flink-filesystems/flink-oss-fs-hadoop/pom.xml b/flink-filesystems/flink-oss-fs-hadoop/pom.xml index 8509fde142c..4e263e319aa 100644 --- a/flink-filesystems/flink-oss-fs-hadoop/pom.xml +++ b/flink-filesystems/flink-oss-fs-hadoop/pom.xml @@ -44,18 +44,21 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-hadoop-fs</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-fs-hadoop-shaded</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-aliyun</artifactId> <version>${fs.hadoopshaded.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>com.aliyun.oss</groupId> @@ -81,6 +84,7 @@ under the License. <groupId>com.aliyun.oss</groupId> <artifactId>aliyun-sdk-oss</artifactId> <version>${fs.oss.sdk.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>javax.xml.bind</groupId> diff --git a/flink-filesystems/flink-s3-fs-hadoop/pom.xml b/flink-filesystems/flink-s3-fs-hadoop/pom.xml index 7be139b58bc..adcf46e5efd 100644 --- a/flink-filesystems/flink-s3-fs-hadoop/pom.xml +++ b/flink-filesystems/flink-s3-fs-hadoop/pom.xml @@ -74,6 +74,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-s3-fs-base</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> diff --git a/flink-filesystems/flink-s3-fs-presto/pom.xml b/flink-filesystems/flink-s3-fs-presto/pom.xml index ca62c5f90d9..05cf8b8ffde 100644 --- a/flink-filesystems/flink-s3-fs-presto/pom.xml +++ b/flink-filesystems/flink-s3-fs-presto/pom.xml @@ -45,6 +45,14 @@ under the License. <scope>provided</scope> </dependency> + <!-- S3 base (bundled) --> + <dependency> + <groupId>org.apache.flink</groupId> + <artifactId>flink-s3-fs-base</artifactId> + <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> + </dependency> + <!-- for the HAJobRunOnPrestoS3FileSystemITCase --> <dependency> <groupId>org.apache.flink</groupId> @@ -89,18 +97,12 @@ under the License. </exclusions> </dependency> - <!-- S3 base (bundled) --> - <dependency> - <groupId>org.apache.flink</groupId> - <artifactId>flink-s3-fs-base</artifactId> - <version>${project.version}</version> - </dependency> - <!-- Presto's S3 file system (bundled) --> <dependency> <groupId>com.facebook.presto</groupId> <artifactId>presto-hive</artifactId> <version>${presto.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <!-- Exclude AWS dependencies which we provide ourselves (and in more recent versions). --> <exclusion> @@ -317,6 +319,7 @@ under the License. <groupId>com.facebook.presto.hadoop</groupId> <artifactId>hadoop-apache2</artifactId> <version>2.7.4-9</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> @@ -352,6 +355,7 @@ under the License. <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>${fs.hadoopshaded.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>jdk.tools</groupId> @@ -379,6 +383,7 @@ under the License. <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-hdfs</artifactId> <version>${fs.hadoopshaded.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>jdk.tools</groupId> @@ -408,6 +413,7 @@ under the License. <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <version>1.9.4</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> </dependencyManagement> diff --git a/flink-formats/flink-csv/pom.xml b/flink-formats/flink-csv/pom.xml index 08f238b7281..6fbc6fc1469 100644 --- a/flink-formats/flink-csv/pom.xml +++ b/flink-formats/flink-csv/pom.xml @@ -39,6 +39,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-format-common</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- core dependencies --> diff --git a/flink-formats/flink-json/pom.xml b/flink-formats/flink-json/pom.xml index 686ad5df3c0..35cc4149883 100644 --- a/flink-formats/flink-json/pom.xml +++ b/flink-formats/flink-json/pom.xml @@ -39,6 +39,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-format-common</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- core dependencies --> diff --git a/flink-formats/flink-sql-avro-confluent-registry/pom.xml b/flink-formats/flink-sql-avro-confluent-registry/pom.xml index 10789e462f0..d625c8e20a9 100644 --- a/flink-formats/flink-sql-avro-confluent-registry/pom.xml +++ b/flink-formats/flink-sql-avro-confluent-registry/pom.xml @@ -49,6 +49,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-avro-confluent-registry</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> diff --git a/flink-formats/flink-sql-avro/pom.xml b/flink-formats/flink-sql-avro/pom.xml index 7fea78b932e..3eecebeedbf 100644 --- a/flink-formats/flink-sql-avro/pom.xml +++ b/flink-formats/flink-sql-avro/pom.xml @@ -42,6 +42,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-avro</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> diff --git a/flink-formats/flink-sql-csv/pom.xml b/flink-formats/flink-sql-csv/pom.xml index 269499c53cd..1a28a3ef931 100644 --- a/flink-formats/flink-sql-csv/pom.xml +++ b/flink-formats/flink-sql-csv/pom.xml @@ -42,6 +42,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-csv</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> diff --git a/flink-formats/flink-sql-json/pom.xml b/flink-formats/flink-sql-json/pom.xml index e32e66f6c55..63646811591 100644 --- a/flink-formats/flink-sql-json/pom.xml +++ b/flink-formats/flink-sql-json/pom.xml @@ -42,6 +42,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-json</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> diff --git a/flink-formats/flink-sql-orc/pom.xml b/flink-formats/flink-sql-orc/pom.xml index bdc6404872c..105d98e14fd 100644 --- a/flink-formats/flink-sql-orc/pom.xml +++ b/flink-formats/flink-sql-orc/pom.xml @@ -42,6 +42,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-orc</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> diff --git a/flink-formats/flink-sql-parquet/pom.xml b/flink-formats/flink-sql-parquet/pom.xml index e1764a4cce6..82c7b9938d2 100644 --- a/flink-formats/flink-sql-parquet/pom.xml +++ b/flink-formats/flink-sql-parquet/pom.xml @@ -42,12 +42,14 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-parquet</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.parquet</groupId> <artifactId>parquet-avro</artifactId> <version>${flink.format.parquet.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>org.apache.hadoop</groupId> diff --git a/flink-formats/flink-sql-protobuf/pom.xml b/flink-formats/flink-sql-protobuf/pom.xml index 923cf153437..0e3bd96b668 100644 --- a/flink-formats/flink-sql-protobuf/pom.xml +++ b/flink-formats/flink-sql-protobuf/pom.xml @@ -42,6 +42,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-protobuf</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> diff --git a/flink-kubernetes/pom.xml b/flink-kubernetes/pom.xml index 8229666c5fb..eb79ec02595 100644 --- a/flink-kubernetes/pom.xml +++ b/flink-kubernetes/pom.xml @@ -62,6 +62,7 @@ under the License. <groupId>io.fabric8</groupId> <artifactId>kubernetes-client</artifactId> <version>${kubernetes.client.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- test dependencies --> diff --git a/flink-metrics/flink-metrics-datadog/pom.xml b/flink-metrics/flink-metrics-datadog/pom.xml index fd2b40742b9..7a95752017b 100644 --- a/flink-metrics/flink-metrics-datadog/pom.xml +++ b/flink-metrics/flink-metrics-datadog/pom.xml @@ -55,6 +55,7 @@ under the License. <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> diff --git a/flink-metrics/flink-metrics-graphite/pom.xml b/flink-metrics/flink-metrics-graphite/pom.xml index 310d6d3411a..2c53624a93d 100644 --- a/flink-metrics/flink-metrics-graphite/pom.xml +++ b/flink-metrics/flink-metrics-graphite/pom.xml @@ -50,18 +50,21 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-metrics-dropwizard</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>io.dropwizard.metrics</groupId> <artifactId>metrics-core</artifactId> <version>${dropwizard.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>io.dropwizard.metrics</groupId> <artifactId>metrics-graphite</artifactId> <version>${dropwizard.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- test dependencies --> diff --git a/flink-metrics/flink-metrics-influxdb/pom.xml b/flink-metrics/flink-metrics-influxdb/pom.xml index 3cc5b1ad900..efa94fe4644 100644 --- a/flink-metrics/flink-metrics-influxdb/pom.xml +++ b/flink-metrics/flink-metrics-influxdb/pom.xml @@ -50,6 +50,7 @@ under the License. <groupId>org.influxdb</groupId> <artifactId>influxdb-java</artifactId> <version>2.17</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- test dependencies --> diff --git a/flink-metrics/flink-metrics-prometheus/pom.xml b/flink-metrics/flink-metrics-prometheus/pom.xml index b5fa2107b5c..7821478ddf9 100644 --- a/flink-metrics/flink-metrics-prometheus/pom.xml +++ b/flink-metrics/flink-metrics-prometheus/pom.xml @@ -61,18 +61,21 @@ under the License. <groupId>io.prometheus</groupId> <artifactId>simpleclient</artifactId> <version>${prometheus.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>io.prometheus</groupId> <artifactId>simpleclient_httpserver</artifactId> <version>${prometheus.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>io.prometheus</groupId> <artifactId>simpleclient_pushgateway</artifactId> <version>${prometheus.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- test dependencies --> diff --git a/flink-python/pom.xml b/flink-python/pom.xml index 339510b5b6f..30cabe9ba84 100644 --- a/flink-python/pom.xml +++ b/flink-python/pom.xml @@ -95,6 +95,7 @@ under the License. <dependency> <groupId>org.apache.beam</groupId> <artifactId>beam-runners-java-fn-execution</artifactId> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>org.apache.beam</groupId> @@ -110,6 +111,7 @@ under the License. <dependency> <groupId>org.apache.beam</groupId> <artifactId>beam-runners-core-java</artifactId> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- PemJa dependencies --> @@ -117,6 +119,7 @@ under the License. <groupId>com.alibaba</groupId> <artifactId>pemja</artifactId> <version>0.3.0</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- Protobuf dependencies --> @@ -124,6 +127,7 @@ under the License. <dependency> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java</artifactId> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- Python API dependencies --> @@ -131,11 +135,13 @@ under the License. <dependency> <groupId>net.sf.py4j</groupId> <artifactId>py4j</artifactId> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>net.razorvine</groupId> <artifactId>pyrolite</artifactId> <version>4.13</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>net.razorvine</groupId> @@ -150,6 +156,7 @@ under the License. <groupId>org.apache.arrow</groupId> <artifactId>arrow-vector</artifactId> <version>${arrow.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>commons-codec</groupId> @@ -161,6 +168,7 @@ under the License. <groupId>org.apache.arrow</groupId> <artifactId>arrow-memory-netty</artifactId> <version>${arrow.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- test dependencies --> diff --git a/flink-rpc/flink-rpc-akka/pom.xml b/flink-rpc/flink-rpc-akka/pom.xml index 9de36d88504..40263144bcd 100644 --- a/flink-rpc/flink-rpc-akka/pom.xml +++ b/flink-rpc/flink-rpc-akka/pom.xml @@ -62,22 +62,26 @@ under the License. <groupId>org.scala-lang</groupId> <artifactId>scala-library</artifactId> <scope>compile</scope> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.scala-lang</groupId> <artifactId>scala-compiler</artifactId> <scope>compile</scope> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>com.typesafe.akka</groupId> <artifactId>akka-actor_${scala.binary.version}</artifactId> <version>${akka.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>com.typesafe.akka</groupId> <artifactId>akka-remote_${scala.binary.version}</artifactId> <version>${akka.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <!-- optional dependency for UDP transport which we don't need --> @@ -95,11 +99,13 @@ under the License. <groupId>com.typesafe.akka</groupId> <artifactId>akka-slf4j_${scala.binary.version}</artifactId> <version>${akka.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>io.netty</groupId> <artifactId>netty</artifactId> <version>3.10.6.Final</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> diff --git a/flink-runtime/pom.xml b/flink-runtime/pom.xml index 527011d1419..09174f6f1c9 100644 --- a/flink-runtime/pom.xml +++ b/flink-runtime/pom.xml @@ -205,6 +205,7 @@ under the License. <groupId>io.airlift</groupId> <artifactId>aircompressor</artifactId> <version>0.21</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- test dependencies --> diff --git a/flink-table/flink-sql-client/pom.xml b/flink-table/flink-sql-client/pom.xml index 2a3ca44e52a..aa919531ee3 100644 --- a/flink-table/flink-sql-client/pom.xml +++ b/flink-table/flink-sql-client/pom.xml @@ -70,12 +70,14 @@ under the License. <groupId>org.jline</groupId> <artifactId>jline-terminal</artifactId> <version>3.21.0</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.jline</groupId> <artifactId>jline-reader</artifactId> <version>3.21.0</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- configuration --> @@ -187,6 +189,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-sql-parser</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>org.apache.calcite</groupId> diff --git a/flink-table/flink-sql-gateway/pom.xml b/flink-table/flink-sql-gateway/pom.xml index 908be32b039..f61b4005e4b 100644 --- a/flink-table/flink-sql-gateway/pom.xml +++ b/flink-table/flink-sql-gateway/pom.xml @@ -47,6 +47,7 @@ <groupId>org.apache.flink</groupId> <artifactId>flink-sql-gateway-api</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> diff --git a/flink-table/flink-sql-jdbc-driver-bundle/pom.xml b/flink-table/flink-sql-jdbc-driver-bundle/pom.xml index 9d43bdb9be4..7bdc62b30f0 100644 --- a/flink-table/flink-sql-jdbc-driver-bundle/pom.xml +++ b/flink-table/flink-sql-jdbc-driver-bundle/pom.xml @@ -39,31 +39,37 @@ <groupId>org.apache.flink</groupId> <artifactId>flink-sql-jdbc-driver</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-sql-client</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-sql-gateway-api</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-sql-gateway</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-table-common</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-annotations</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- Used to create Executor in connection. TODO jdbc driver should get rid of flink-core which is a big module. --> @@ -71,6 +77,7 @@ <groupId>org.apache.flink</groupId> <artifactId>flink-core</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> diff --git a/flink-table/flink-table-api-java-uber/pom.xml b/flink-table/flink-table-api-java-uber/pom.xml index 1d5eb41f29e..70fe59b3581 100644 --- a/flink-table/flink-table-api-java-uber/pom.xml +++ b/flink-table/flink-table-api-java-uber/pom.xml @@ -40,26 +40,31 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-table-common</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-table-api-java</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-table-api-bridge-base</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-table-api-java-bridge</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-sql-gateway-api</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> diff --git a/flink-table/flink-table-code-splitter/pom.xml b/flink-table/flink-table-code-splitter/pom.xml index 68905ef8fc1..22daa5751ef 100644 --- a/flink-table/flink-table-code-splitter/pom.xml +++ b/flink-table/flink-table-code-splitter/pom.xml @@ -47,6 +47,7 @@ under the License. <groupId>org.antlr</groupId> <artifactId>antlr4-runtime</artifactId> <version>${antlr4.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> diff --git a/flink-table/flink-table-planner-loader-bundle/pom.xml b/flink-table/flink-table-planner-loader-bundle/pom.xml index 4cee117f473..7c0554655c4 100644 --- a/flink-table/flink-table-planner-loader-bundle/pom.xml +++ b/flink-table/flink-table-planner-loader-bundle/pom.xml @@ -44,6 +44,7 @@ <artifactId>flink-table-planner_${scala.binary.version}</artifactId> <version>${project.version}</version> <scope>runtime</scope> + <optional>${flink.markBundledAsOptional}</optional> </dependency> </dependencies> diff --git a/flink-table/flink-table-planner/pom.xml b/flink-table/flink-table-planner/pom.xml index 1d61615d30f..51255452db5 100644 --- a/flink-table/flink-table-planner/pom.xml +++ b/flink-table/flink-table-planner/pom.xml @@ -42,6 +42,7 @@ under the License. <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>org.checkerframework</groupId> @@ -92,6 +93,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-sql-parser</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> <exclusions> <exclusion> <groupId>org.apache.calcite</groupId> @@ -109,6 +111,7 @@ under the License. <groupId>org.checkerframework</groupId> <artifactId>checker-qual</artifactId> <version>3.10.0</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- Table Runtime (not included in the uber) --> @@ -124,6 +127,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-table-calcite-bridge</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- Test dependencies --> diff --git a/flink-table/flink-table-runtime/pom.xml b/flink-table/flink-table-runtime/pom.xml index de60fed50f8..a50823b22c9 100644 --- a/flink-table/flink-table-runtime/pom.xml +++ b/flink-table/flink-table-runtime/pom.xml @@ -59,6 +59,7 @@ under the License. <groupId>org.apache.flink</groupId> <artifactId>flink-table-code-splitter</artifactId> <version>${project.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- Flink dependencies --> @@ -72,10 +73,12 @@ under the License. <dependency> <groupId>org.codehaus.janino</groupId> <artifactId>janino</artifactId> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <dependency> <groupId>org.codehaus.janino</groupId> <artifactId>commons-compiler</artifactId> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- JsonPath --> @@ -84,6 +87,7 @@ under the License. <groupId>com.jayway.jsonpath</groupId> <artifactId>json-path</artifactId> <version>${jsonpath.version}</version> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- Test dependencies --> diff --git a/pom.xml b/pom.xml index 7e77b35570f..a881b395669 100644 --- a/pom.xml +++ b/pom.xml @@ -124,6 +124,7 @@ under the License. <flink.surefire.baseArgLine>-XX:+UseG1GC -Xms256m</flink.surefire.baseArgLine> <flink.shaded.version>16.1</flink.shaded.version> <flink.shaded.jackson.version>2.13.4</flink.shaded.jackson.version> + <flink.markBundledAsOptional>true</flink.markBundledAsOptional> <target.java.version>1.8</target.java.version> <slf4j.version>1.7.36</slf4j.version> <log4j.version>2.17.1</log4j.version> @@ -206,6 +207,7 @@ under the License. <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-shaded-force-shading</artifactId> + <optional>${flink.markBundledAsOptional}</optional> </dependency> <!-- Root dependencies for all projects --> @@ -938,6 +940,20 @@ under the License. </dependencyManagement> <profiles> + <profile> + <id>intellij</id> + <activation> + <property> + <name>idea.version</name> + </property> + </activation> + <properties> + <!-- Set to false so that all required dependencies are put on the classpath, + since IntelliJ does not work against jars produced by the shade plugin + (which may bundled said classes). --> + <flink.markBundledAsOptional>false</flink.markBundledAsOptional> + </properties> + </profile> <profile> <id>scala-2.12</id> <properties>