<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>io.airlift</groupId> <artifactId>airbase</artifactId> <version>130</version> </parent> <groupId>io.trino</groupId> <artifactId>trino-root</artifactId> <version>401-SNAPSHOT</version> <name>trino-root</name> <description>Trino</description> <packaging>pom</packaging> <url>https://trino.io</url> <inceptionYear>2012</inceptionYear> <licenses> <license> <name>Apache License 2.0</name> <url>http://www.apache.org/licenses/LICENSE-2.0</url> <distribution>repo</distribution> </license> </licenses> <scm> <connection>scm:git:git://github.com/trinodb/trino.git</connection> <url>https://github.com/trinodb/trino</url> <tag>HEAD</tag> </scm> <properties> <air.main.basedir>${project.basedir}</air.main.basedir> <air.check.skip-spotbugs>true</air.check.skip-spotbugs> <air.check.skip-pmd>true</air.check.skip-pmd> <air.check.skip-jacoco>true</air.check.skip-jacoco> <project.build.targetJdk>17</project.build.targetJdk> <air.java.version>17.0.4</air.java.version> <air.modernizer.java-version>8</air.modernizer.java-version> <air.release.preparation-goals>clean verify -DskipTests</air.release.preparation-goals> <dep.accumulo.version>1.7.4</dep.accumulo.version> <dep.accumulo-hadoop.version>2.7.7-1</dep.accumulo-hadoop.version> <dep.antlr.version>4.11.1</dep.antlr.version> <dep.airlift.version>219</dep.airlift.version> <dep.packaging.version>${dep.airlift.version}</dep.packaging.version> <dep.aws-sdk.version>1.12.172</dep.aws-sdk.version> <dep.okhttp.version>3.14.9</dep.okhttp.version> <dep.joda.version>2.10.13</dep.joda.version> <dep.jsonwebtoken.version>0.11.2</dep.jsonwebtoken.version> <dep.oracle.version>19.3.0.0</dep.oracle.version> <dep.drift.version>1.14</dep.drift.version> <dep.tempto.version>189</dep.tempto.version> <dep.gcs.version>2.2.8</dep.gcs.version> <dep.errorprone.version>2.15.0</dep.errorprone.version> <dep.testcontainers.version>1.17.3</dep.testcontainers.version> <dep.duct-tape.version>1.0.8</dep.duct-tape.version> <dep.coral.version>2.0.77</dep.coral.version> <dep.confluent.version>5.5.2</dep.confluent.version> <dep.casandra.version>4.14.0</dep.casandra.version> <dep.minio.version>7.1.4</dep.minio.version> <dep.iceberg.version>0.14.1</dep.iceberg.version> <dep.spotbugs-annotations.version>4.7.2</dep.spotbugs-annotations.version> <dep.docker.images.version>65</dep.docker.images.version> <!-- America/Bahia_Banderas has: - offset change since 1970 (offset Jan 1970: -08:00, offset Jan 2018: -06:00) - DST (e.g. at 2017-04-02 02:00:00 clocks turned forward 1 hour; 2017-10-29 02:00:00 clocks turned backward 1 hour) - has forward offset change on first day of epoch (1970-01-01 00:00:00 clocks turned forward 1 hour) - had forward change at midnight (1970-01-01 00:00:00 clocks turned forward 1 hour) --> <air.test.timezone>America/Bahia_Banderas</air.test.timezone> <air.test.parallel>methods</air.test.parallel> <air.test.thread-count>2</air.test.thread-count> <!-- Be conservative about memory allotment, because tests start background process (e.g. docker containers) --> <air.test.jvmsize>3g</air.test.jvmsize> <air.javadoc.lint>-missing</air.javadoc.lint> </properties> <modules> <module>client/trino-cli</module> <module>client/trino-client</module> <module>client/trino-jdbc</module> <module>core/trino-main</module> <module>core/trino-parser</module> <module>core/trino-server</module> <module>core/trino-server-main</module> <module>core/trino-server-rpm</module> <module>core/trino-spi</module> <module>docs</module> <module>lib/trino-array</module> <module>lib/trino-collect</module> <module>lib/trino-filesystem</module> <module>lib/trino-geospatial-toolkit</module> <module>lib/trino-hadoop-toolkit</module> <module>lib/trino-hdfs</module> <module>lib/trino-matching</module> <module>lib/trino-memory-context</module> <module>lib/trino-orc</module> <module>lib/trino-parquet</module> <!-- TODO(https://github.com/trinodb/trino/issues/13051): Remove whole module when Phoenix5 is released --> <module>lib/trino-phoenix5-patched</module> <module>lib/trino-plugin-toolkit</module> <module>lib/trino-rcfile</module> <module>lib/trino-record-decoder</module> <module>plugin/trino-accumulo</module> <module>plugin/trino-accumulo-iterators</module> <module>plugin/trino-atop</module> <module>plugin/trino-base-jdbc</module> <module>plugin/trino-bigquery</module> <module>plugin/trino-blackhole</module> <module>plugin/trino-cassandra</module> <module>plugin/trino-clickhouse</module> <module>plugin/trino-delta-lake</module> <module>plugin/trino-druid</module> <module>plugin/trino-elasticsearch</module> <module>plugin/trino-example-http</module> <module>plugin/trino-exchange-filesystem</module> <module>plugin/trino-geospatial</module> <module>plugin/trino-google-sheets</module> <module>plugin/trino-hive</module> <module>plugin/trino-hive-hadoop2</module> <module>plugin/trino-http-event-listener</module> <module>plugin/trino-hudi</module> <module>plugin/trino-iceberg</module> <module>plugin/trino-jmx</module> <module>plugin/trino-kafka</module> <module>plugin/trino-kinesis</module> <module>plugin/trino-kudu</module> <module>plugin/trino-local-file</module> <module>plugin/trino-mariadb</module> <module>plugin/trino-memory</module> <module>plugin/trino-ml</module> <module>plugin/trino-mongodb</module> <module>plugin/trino-mysql</module> <module>plugin/trino-oracle</module> <module>plugin/trino-password-authenticators</module> <module>plugin/trino-phoenix5</module> <module>plugin/trino-pinot</module> <module>plugin/trino-postgresql</module> <module>plugin/trino-prometheus</module> <module>plugin/trino-raptor-legacy</module> <module>plugin/trino-redis</module> <module>plugin/trino-redshift</module> <module>plugin/trino-resource-group-managers</module> <module>plugin/trino-session-property-managers</module> <module>plugin/trino-singlestore</module> <module>plugin/trino-sqlserver</module> <module>plugin/trino-teradata-functions</module> <module>plugin/trino-thrift</module> <module>plugin/trino-thrift-api</module> <module>plugin/trino-thrift-testing-server</module> <module>plugin/trino-tpcds</module> <module>plugin/trino-tpch</module> <module>service/trino-proxy</module> <module>service/trino-verifier</module> <module>testing/trino-benchmark</module> <module>testing/trino-benchmark-queries</module> <module>testing/trino-benchto-benchmarks</module> <module>testing/trino-faulttolerant-tests</module> <module>testing/trino-plugin-reader</module> <module>testing/trino-product-tests</module> <module>testing/trino-product-tests-launcher</module> <module>testing/trino-server-dev</module> <module>testing/trino-test-jdbc-compatibility-old-driver</module> <module>testing/trino-test-jdbc-compatibility-old-server</module> <module>testing/trino-testing</module> <module>testing/trino-testing-containers</module> <module>testing/trino-testing-kafka</module> <module>testing/trino-testing-resources</module> <module>testing/trino-testing-services</module> <module>testing/trino-tests</module> </modules> <dependencyManagement> <dependencies> <!-- Trino --> <dependency> <groupId>io.trino</groupId> <artifactId>trino-array</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-base-jdbc</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-base-jdbc</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-benchmark</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-benchmark-queries</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-benchto-benchmarks</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-blackhole</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-cli</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-client</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-collect</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-collect</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-delta-lake</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-delta-lake</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-elasticsearch</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-example-http</artifactId> <type>zip</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-exchange-filesystem</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-exchange-filesystem</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-faulttolerant-tests</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-filesystem</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-geospatial</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-geospatial-toolkit</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-hadoop-toolkit</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-hdfs</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-hive</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-hive</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-hive-hadoop2</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-hudi</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-iceberg</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-iceberg</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-jdbc</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-jmx</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-local-file</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-main</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-main</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-mariadb</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-matching</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-memory</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-memory</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-memory-context</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-mongodb</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-mysql</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-orc</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-parquet</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-parser</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-parser</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-password-authenticators</artifactId> <version>${project.version}</version> </dependency> <!-- TODO(https://github.com/trinodb/trino/issues/13051): Remove when Phoenix5 is released --> <dependency> <groupId>io.trino</groupId> <artifactId>trino-phoenix5-patched</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-pinot</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-plugin-reader</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-plugin-toolkit</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-plugin-toolkit</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-product-tests</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-raptor-legacy</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-rcfile</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-record-decoder</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-resource-group-managers</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-resource-group-managers</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-server</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-server-rpm</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-session-property-managers</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-session-property-managers</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-spi</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-spi</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-sqlserver</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-testing</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-testing-containers</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-testing-kafka</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-testing-resources</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-testing-services</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-tests</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-tests</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-thrift</artifactId> <type>zip</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-thrift-api</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-thrift-api</artifactId> <type>test-jar</type> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-thrift-testing-server</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-tpcds</artifactId> <version>${project.version}</version> </dependency> <dependency> <groupId>io.trino</groupId> <artifactId>trino-tpch</artifactId> <version>${project.version}</version> </dependency> <!-- Trino external --> <dependency> <groupId>io.trino.benchto</groupId> <artifactId>benchto-driver</artifactId> <version>0.19</version> </dependency> <dependency> <groupId>io.trino.hadoop</groupId> <artifactId>hadoop-apache</artifactId> <version>3.2.0-16</version> </dependency> <dependency> <groupId>io.trino.hive</groupId> <artifactId>hive-apache</artifactId> <version>3.1.2-20</version> </dependency> <dependency> <groupId>io.trino.hive</groupId> <artifactId>hive-apache-jdbc</artifactId> <version>0.13.1-9</version> </dependency> <dependency> <groupId>io.trino.orc</groupId> <artifactId>orc-protobuf</artifactId> <version>14</version> </dependency> <dependency> <groupId>io.trino.tempto</groupId> <artifactId>tempto-core</artifactId> <version>${dep.tempto.version}</version> <exclusions> <exclusion> <groupId>com.google.code.findbugs</groupId> <artifactId>annotations</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>io.trino.tempto</groupId> <artifactId>tempto-kafka</artifactId> <version>${dep.tempto.version}</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>io.trino.tempto</groupId> <artifactId>tempto-ldap</artifactId> <version>${dep.tempto.version}</version> </dependency> <dependency> <groupId>io.trino.tempto</groupId> <artifactId>tempto-runner</artifactId> <version>${dep.tempto.version}</version> </dependency> <dependency> <groupId>io.trino.tpcds</groupId> <artifactId>tpcds</artifactId> <version>1.4</version> </dependency> <dependency> <groupId>io.trino.tpch</groupId> <artifactId>tpch</artifactId> <version>1.1</version> </dependency> <!-- Airlift --> <dependency> <groupId>io.airlift</groupId> <artifactId>aircompressor</artifactId> <version>0.21</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>bootstrap</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>bytecode</artifactId> <version>1.4</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>concurrent</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>configuration</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>dbpool</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>discovery</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>event</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>http-client</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>http-server</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>jaxrs</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>jaxrs-testing</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>jmx</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>jmx-http</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>joni</artifactId> <version>2.1.5.3</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>json</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>log</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>log-manager</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>node</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>parameternames</artifactId> <version>1.4</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>security</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>stats</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>testing</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>trace-token</artifactId> <version>${dep.airlift.version}</version> </dependency> <dependency> <groupId>io.airlift</groupId> <artifactId>units</artifactId> <version>1.7</version> </dependency> <dependency> <groupId>io.airlift.discovery</groupId> <artifactId>discovery-server</artifactId> <version>1.30</version> </dependency> <dependency> <groupId>io.airlift.drift</groupId> <artifactId>drift-api</artifactId> <version>${dep.drift.version}</version> </dependency> <dependency> <groupId>io.airlift.drift</groupId> <artifactId>drift-client</artifactId> <version>${dep.drift.version}</version> </dependency> <dependency> <groupId>io.airlift.drift</groupId> <artifactId>drift-codec</artifactId> <version>${dep.drift.version}</version> </dependency> <dependency> <groupId>io.airlift.drift</groupId> <artifactId>drift-protocol</artifactId> <version>${dep.drift.version}</version> </dependency> <dependency> <groupId>io.airlift.drift</groupId> <artifactId>drift-server</artifactId> <version>${dep.drift.version}</version> </dependency> <dependency> <groupId>io.airlift.drift</groupId> <artifactId>drift-transport-netty</artifactId> <version>${dep.drift.version}</version> </dependency> <dependency> <groupId>io.airlift.resolver</groupId> <artifactId>resolver</artifactId> <version>1.6</version> </dependency> <!-- 3rd party --> <dependency> <groupId>com.amazonaws</groupId> <artifactId>amazon-kinesis-client</artifactId> <version>1.6.3</version> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> <exclusion> <groupId>commons-lang</groupId> <artifactId>commons-lang</artifactId> </exclusion> <exclusion> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> </exclusion> <exclusion> <groupId>com.google.protobuf</groupId> <artifactId>protobuf-java</artifactId> </exclusion> <exclusion> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk</artifactId> </exclusion> <exclusion> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-core</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-core</artifactId> <version>${dep.aws-sdk.version}</version> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> <exclusion> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-dynamodb</artifactId> <version>${dep.aws-sdk.version}</version> </dependency> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-glue</artifactId> <version>${dep.aws-sdk.version}</version> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> <exclusion> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-kinesis</artifactId> <version>${dep.aws-sdk.version}</version> <exclusions> <exclusion> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> </exclusion> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-s3</artifactId> <version>${dep.aws-sdk.version}</version> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> <exclusion> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-java-sdk-sts</artifactId> <version>${dep.aws-sdk.version}</version> <exclusions> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> <exclusion> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.clearspring.analytics</groupId> <artifactId>stream</artifactId> <version>2.9.5</version> </dependency> <dependency> <groupId>com.clickhouse</groupId> <artifactId>clickhouse-jdbc</artifactId> <version>0.3.2-patch3</version> <classifier>all</classifier> <exclusions> <exclusion> <groupId>*</groupId> <artifactId>*</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.databricks</groupId> <artifactId>databricks-jdbc</artifactId> <version>2.6.25-1</version> </dependency> <dependency> <groupId>com.datastax.oss</groupId> <artifactId>java-driver-core</artifactId> <version>${dep.casandra.version}</version> <exclusions> <exclusion> <groupId>org.ow2.asm</groupId> <artifactId>asm-analysis</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.esri.geometry</groupId> <artifactId>esri-geometry-api</artifactId> <version>2.2.4</version> <exclusions> <exclusion> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.facebook.thirdparty</groupId> <artifactId>libsvm</artifactId> <version>3.18.1</version> </dependency> <dependency> <groupId>com.github.ben-manes.caffeine</groupId> <artifactId>caffeine</artifactId> <version>3.0.5</version> </dependency> <dependency> <groupId>com.github.docker-java</groupId> <artifactId>docker-java-api</artifactId> <version>3.2.13</version> </dependency> <dependency> <groupId>com.github.oshi</groupId> <artifactId>oshi-core</artifactId> <version>5.8.5</version> </dependency> <dependency> <groupId>com.google.cloud.bigdataoss</groupId> <artifactId>gcs-connector</artifactId> <version>hadoop2-${dep.gcs.version}</version> <classifier>shaded</classifier> <exclusions> <exclusion> <groupId>*</groupId> <artifactId>*</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.google.errorprone</groupId> <artifactId>error_prone_annotations</artifactId> <version>${dep.errorprone.version}</version> </dependency> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <version>1.4.200</version> </dependency> <dependency> <groupId>com.linkedin.calcite</groupId> <artifactId>calcite-core</artifactId> <version>1.21.0.152</version> <classifier>shaded</classifier> <exclusions> <exclusion> <!-- Exclude everything because shaded version of calcite-core still pulls in all the original dependencies --> <groupId>*</groupId> <artifactId>*</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.linkedin.coral</groupId> <artifactId>coral-common</artifactId> <version>${dep.coral.version}</version> <exclusions> <exclusion> <groupId>org.apache.hive</groupId> <artifactId>hive-metastore</artifactId> </exclusion> <exclusion> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.linkedin.coral</groupId> <artifactId>coral-hive</artifactId> <version>${dep.coral.version}</version> </dependency> <dependency> <groupId>com.linkedin.coral</groupId> <artifactId>coral-trino</artifactId> <version>${dep.coral.version}</version> <exclusions> <!-- The `trino-parser` library is being used internally within the `coral-trino` library for parsing Trino SQL statements. This functionality is irrelevant in the context of using Coral for Hive view translations within Trino. This dependency is excluded because `trino-parser` does not guarantee API or behavioral backwards compatibility. Trino cannot provide the version on which `coral-trino` library depends on, because the current version of `trino-parser` is used in tests of this module. The dependency is therefore intentionally excluded to avoid breaking in an unexpected way, or silent correctness issues. --> <exclusion> <groupId>io.trino</groupId> <artifactId>trino-parser</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId> <version>10.2.0.jre11</version> </dependency> <dependency> <groupId>com.nimbusds</groupId> <artifactId>nimbus-jose-jwt</artifactId> <version>9.14</version> </dependency> <dependency> <groupId>com.nimbusds</groupId> <artifactId>oauth2-oidc-sdk</artifactId> <version>9.18</version> </dependency> <dependency> <groupId>com.qubole.rubix</groupId> <artifactId>rubix-presto-shaded</artifactId> <version>0.3.18</version> </dependency> <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>logging-interceptor</artifactId> <version>${dep.okhttp.version}</version> </dependency> <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>mockwebserver</artifactId> <version>${dep.okhttp.version}</version> </dependency> <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> <version>${dep.okhttp.version}</version> </dependency> <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp-tls</artifactId> <version>${dep.okhttp.version}</version> </dependency> <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp-urlconnection</artifactId> <version>${dep.okhttp.version}</version> </dependency> <dependency> <groupId>com.teradata</groupId> <artifactId>re2j-td</artifactId> <version>1.4</version> </dependency> <dependency> <groupId>info.picocli</groupId> <artifactId>picocli</artifactId> <version>4.6.1</version> </dependency> <dependency> <groupId>io.confluent</groupId> <artifactId>kafka-avro-serializer</artifactId> <version>${dep.confluent.version}</version> <exclusions> <exclusion> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> </exclusion> <!-- This library depends on: - org.glassfish.hk2.external:jakarta.inject that conflicts with javax.inject:javax.inject --> <exclusion> <groupId>org.glassfish.hk2.external</groupId> <artifactId>jakarta.inject</artifactId> </exclusion> <exclusion> <groupId>net.sf.jopt-simple</groupId> <artifactId>jopt-simple</artifactId> </exclusion> <exclusion> <groupId>commons-cli</groupId> <artifactId>commons-cli</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>io.confluent</groupId> <artifactId>kafka-json-schema-serializer</artifactId> <version>${dep.confluent.version}</version> <!-- This is under Confluence Community License and it should not be used with compile scope --> <scope>test</scope> <exclusions> <exclusion> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> </exclusion> <exclusion> <groupId>com.google.re2j</groupId> <artifactId>re2j</artifactId> </exclusion> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>io.confluent</groupId> <artifactId>kafka-schema-registry-client</artifactId> <version>${dep.confluent.version}</version> <exclusions> <exclusion> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> </exclusion> <!-- This library depends on conflicting: - com.sun.activation:jakarta.activation and jakarta.activation:jakarta.activation-api - jakarta.el:jakarta.el-api and org.glassfish:jakarta.el This library depends on: - org.glassfish.hk2.external:jakarta.inject that conflicts with javax.inject:javax.inject - jakarta.validation:jakarta.validation-api that conflicts with javax.validation:validation-api - jakarta.annotation:jakarta.annotation-api that conflicts with javax.annotation:javax.annotation-api - com.sun.activation:jakarta.activation that conflicts with javax.activation:javax.activation-api - jakarta.ws.rs:jakarta.ws.rs-api that conflicts with javax.ws.rs:javax.ws.rs-api - jakarta.xml.bind:jakarta.xml.bind-api that conflicts with javax.xml.bind:jaxb-api --> <exclusion> <groupId>com.sun.activation</groupId> <artifactId>jakarta.activation</artifactId> </exclusion> <exclusion> <groupId>jakarta.activation</groupId> <artifactId>jakarta.activation-api</artifactId> </exclusion> <exclusion> <groupId>jakarta.annotation</groupId> <artifactId>jakarta.annotation-api</artifactId> </exclusion> <exclusion> <groupId>jakarta.validation</groupId> <artifactId>jakarta.validation-api</artifactId> </exclusion> <exclusion> <groupId>jakarta.ws.rs</groupId> <artifactId>jakarta.ws.rs-api</artifactId> </exclusion> <exclusion> <groupId>jakarta.xml.bind</groupId> <artifactId>jakarta.xml.bind-api</artifactId> </exclusion> <exclusion> <groupId>org.glassfish</groupId> <artifactId>jakarta.el</artifactId> </exclusion> <exclusion> <groupId>org.glassfish.hk2.external</groupId> <artifactId>jakarta.inject</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>io.confluent</groupId> <artifactId>kafka-schema-serializer</artifactId> <version>${dep.confluent.version}</version> </dependency> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-api</artifactId> <version>${dep.jsonwebtoken.version}</version> </dependency> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-impl</artifactId> <version>${dep.jsonwebtoken.version}</version> </dependency> <dependency> <groupId>io.jsonwebtoken</groupId> <artifactId>jjwt-jackson</artifactId> <version>${dep.jsonwebtoken.version}</version> </dependency> <dependency> <groupId>io.minio</groupId> <artifactId>minio</artifactId> <version>${dep.minio.version}</version> </dependency> <!-- io.confluent:kafka-avro-serializer uses multiple versions of this transitive dependency --> <dependency> <groupId>io.swagger</groupId> <artifactId>swagger-annotations</artifactId> <version>1.6.2</version> </dependency> <!-- io.confluent:kafka-avro-serializer uses multiple versions of this transitive dependency --> <dependency> <groupId>io.swagger</groupId> <artifactId>swagger-core</artifactId> <version>1.6.2</version> </dependency> <dependency> <groupId>it.unimi.dsi</groupId> <artifactId>fastutil</artifactId> <version>8.3.0</version> </dependency> <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.3.1</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.2</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.22</version> </dependency> <dependency> <!-- org.testcontainers:testcontainer's dependencies pull two different versions of this artifact and this is to negotiate the version --> <groupId>net.java.dev.jna</groupId> <artifactId>jna</artifactId> <version>5.12.1</version> </dependency> <dependency> <groupId>net.jodah</groupId> <artifactId>failsafe</artifactId> <version>2.4.0</version> </dependency> <dependency> <groupId>net.sf.opencsv</groupId> <artifactId>opencsv</artifactId> <version>2.3</version> </dependency> <dependency> <groupId>org.alluxio</groupId> <artifactId>alluxio-shaded-client</artifactId> <version>2.8.1</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> <exclusion> <groupId>log4j</groupId> <artifactId>log4j</artifactId> </exclusion> <exclusion> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.antlr</groupId> <artifactId>antlr4-runtime</artifactId> <version>${dep.antlr.version}</version> </dependency> <dependency> <groupId>org.apache.avro</groupId> <artifactId>avro</artifactId> <version>1.9.2</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-compress</artifactId> <version>1.21</version> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-math3</artifactId> <version>3.6.1</version> </dependency> <dependency> <groupId>org.apache.iceberg</groupId> <artifactId>iceberg-api</artifactId> <version>${dep.iceberg.version}</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.iceberg</groupId> <artifactId>iceberg-core</artifactId> <version>${dep.iceberg.version}</version> <exclusions> <exclusion> <groupId>org.apache.avro</groupId> <artifactId>avro</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.iceberg</groupId> <artifactId>iceberg-hive-metastore</artifactId> <version>${dep.iceberg.version}</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.iceberg</groupId> <artifactId>iceberg-orc</artifactId> <version>${dep.iceberg.version}</version> <exclusions> <exclusion> <groupId>org.apache.avro</groupId> <artifactId>avro</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.iceberg</groupId> <artifactId>iceberg-parquet</artifactId> <version>${dep.iceberg.version}</version> <exclusions> <exclusion> <groupId>org.apache.parquet</groupId> <artifactId>parquet-avro</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> <version>2.4.1</version> </dependency> <dependency> <groupId>org.apache.maven</groupId> <artifactId>maven-model</artifactId> <version>3.8.4</version> </dependency> <dependency> <groupId>org.apache.thrift</groupId> <artifactId>libthrift</artifactId> <version>0.9.3-1</version> <exclusions> <exclusion> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpcore</artifactId> </exclusion> <exclusion> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> </exclusion> <exclusion> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.5.8</version> <exclusions> <exclusion> <groupId>log4j</groupId> <artifactId>log4j</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> </exclusion> <exclusion> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-server</artifactId> </exclusion> <exclusion> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-servlet</artifactId> </exclusion> <exclusion> <groupId>commons-cli</groupId> <artifactId>commons-cli</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.checkerframework</groupId> <artifactId>checker-qual</artifactId> <version>3.25.0</version> </dependency> <dependency> <groupId>org.codehaus.plexus</groupId> <artifactId>plexus-utils</artifactId> <version>3.4.1</version> </dependency> <dependency> <groupId>org.flywaydb</groupId> <artifactId>flyway-core</artifactId> <version>7.15.0</version> </dependency> <!-- force newer version to be used for dependencies --> <dependency> <groupId>org.javassist</groupId> <artifactId>javassist</artifactId> <version>3.22.0-GA</version> </dependency> <dependency> <groupId>org.jdbi</groupId> <artifactId>jdbi3-bom</artifactId> <type>pom</type> <version>3.32.0</version> <scope>import</scope> </dependency> <dependency> <groupId>org.jetbrains</groupId> <artifactId>annotations</artifactId> <version>19.0.0</version> </dependency> <dependency> <groupId>org.jgrapht</groupId> <artifactId>jgrapht-core</artifactId> <version>0.9.0</version> </dependency> <dependency> <groupId>org.locationtech.jts</groupId> <artifactId>jts-core</artifactId> <version>1.16.1</version> </dependency> <dependency> <groupId>org.locationtech.jts.io</groupId> <artifactId>jts-io-common</artifactId> <version>1.16.1</version> <exclusions> <exclusion> <groupId>junit</groupId> <artifactId>junit</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.mariadb.jdbc</groupId> <artifactId>mariadb-java-client</artifactId> <version>3.0.5</version> </dependency> <dependency> <groupId>org.openjdk.jol</groupId> <artifactId>jol-core</artifactId> <version>0.16</version> </dependency> <dependency> <groupId>org.ow2.asm</groupId> <artifactId>asm</artifactId> <version>9.3</version> </dependency> <dependency> <groupId>org.pcollections</groupId> <artifactId>pcollections</artifactId> <version>2.1.2</version> </dependency> <dependency> <groupId>org.postgresql</groupId> <artifactId>postgresql</artifactId> <version>42.5.0</version> </dependency> <dependency> <groupId>org.roaringbitmap</groupId> <artifactId>RoaringBitmap</artifactId> <version>0.9.30</version> </dependency> <dependency> <groupId>org.sonatype.aether</groupId> <artifactId>aether-api</artifactId> <version>1.13.1</version> </dependency> <dependency> <groupId>org.testcontainers</groupId> <artifactId>testcontainers</artifactId> <version>${dep.testcontainers.version}</version> <exclusions> <exclusion> <groupId>org.osgi</groupId> <artifactId>org.osgi.core</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.testcontainers</groupId> <artifactId>testcontainers-bom</artifactId> <type>pom</type> <version>${dep.testcontainers.version}</version> <scope>import</scope> </dependency> <dependency> <groupId>org.xerial.snappy</groupId> <artifactId>snappy-java</artifactId> <version>1.1.8.4</version> <exclusions> <exclusion> <groupId>org.osgi</groupId> <artifactId>org.osgi.core</artifactId> </exclusion> </exclusions> </dependency> <!-- Transitive dependency from jackson-dataformat-yaml. Avoid different versions being used --> <dependency> <groupId>org.yaml</groupId> <artifactId>snakeyaml</artifactId> <version>1.31</version> </dependency> </dependencies> </dependencyManagement> <build> <pluginManagement> <plugins> <plugin> <groupId>org.antlr</groupId> <artifactId>antlr4-maven-plugin</artifactId> <version>${dep.antlr.version}</version> <executions> <execution> <goals> <goal>antlr4</goal> </goals> </execution> </executions> <configuration> <visitor>true</visitor> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.2.4</version> </plugin> <plugin> <groupId>org.skife.maven</groupId> <artifactId>really-executable-jar-maven-plugin</artifactId> <version>1.0.5</version> </plugin> <plugin> <groupId>org.codehaus.gmaven</groupId> <artifactId>groovy-maven-plugin</artifactId> <version>2.1.1</version> </plugin> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.6.0</version> </plugin> <plugin> <groupId>io.airlift.drift</groupId> <artifactId>drift-maven-plugin</artifactId> <version>${dep.drift.version}</version> </plugin> <plugin> <groupId>org.gaul</groupId> <artifactId>modernizer-maven-plugin</artifactId> <configuration> <violationsFiles> <violationsFile>${air.main.basedir}/.mvn/modernizer/violations.xml</violationsFile> </violationsFiles> <exclusionPatterns> <exclusionPattern>org/joda/time/.*</exclusionPattern> </exclusionPatterns> <exclusions> <!-- getOnlyElement is more readable than the stream analogue --> <exclusion>com/google/common/collect/Iterables.getOnlyElement:(Ljava/lang/Iterable;)Ljava/lang/Object;</exclusion> <!-- getLast has lower complexity for array based lists than the stream analogue (O(1) vs O(log(N)) --> <exclusion>com/google/common/collect/Iterables.getLast:(Ljava/lang/Iterable;)Ljava/lang/Object;</exclusion> <exclusion>com/google/common/collect/Iterables.getLast:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;</exclusion> <!-- TODO: requires getting to common understanding which of those we want to enable --> <exclusion>com/google/common/collect/Iterables.transform:(Ljava/lang/Iterable;Lcom/google/common/base/Function;)Ljava/lang/Iterable;</exclusion> <exclusion>com/google/common/collect/Lists.transform:(Ljava/util/List;Lcom/google/common/base/Function;)Ljava/util/List;</exclusion> <exclusion>com/google/common/collect/Iterables.isEmpty:(Ljava/lang/Iterable;)Z</exclusion> <exclusion>com/google/common/collect/Iterables.concat:(Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljava/lang/Iterable;</exclusion> <exclusion>com/google/common/collect/Iterables.concat:(Ljava/lang/Iterable;Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljava/lang/Iterable;</exclusion> <exclusion>com/google/common/collect/Iterables.concat:(Ljava/lang/Iterable;Ljava/lang/Iterable;Ljava/lang/Iterable;Ljava/lang/Iterable;)Ljava/lang/Iterable;</exclusion> <exclusion>com/google/common/collect/Iterables.concat:(Ljava/lang/Iterable;)Ljava/lang/Iterable;</exclusion> <exclusion>com/google/common/collect/Iterables.all:(Ljava/lang/Iterable;Lcom/google/common/base/Predicate;)Z</exclusion> <exclusion>com/google/common/collect/Iterables.any:(Ljava/lang/Iterable;Lcom/google/common/base/Predicate;)Z</exclusion> <exclusion>com/google/common/collect/Iterables.skip:(Ljava/lang/Iterable;I)Ljava/lang/Iterable;</exclusion> <exclusion>com/google/common/collect/Iterables.limit:(Ljava/lang/Iterable;I)Ljava/lang/Iterable;</exclusion> <exclusion>com/google/common/collect/Iterables.get:(Ljava/lang/Iterable;I)Ljava/lang/Object;</exclusion> <exclusion>com/google/common/collect/Iterables.getFirst:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;</exclusion> <exclusion>com/google/common/collect/Iterables.getLast:(Ljava/lang/Iterable;)Ljava/lang/Object;</exclusion> <exclusion>com/google/common/collect/Iterables.cycle:(Ljava/lang/Iterable;)Ljava/lang/Iterable;</exclusion> <exclusion>com/google/common/collect/Iterables.cycle:([Ljava/lang/Object;)Ljava/lang/Iterable;</exclusion> <exclusion>com/google/common/collect/Iterables.getOnlyElement:(Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object;</exclusion> <!-- com.google.common.io.BaseEncoding.base64 provides more reach interfaces than java.util.Base64 --> <exclusion>com/google/common/io/BaseEncoding.base64:()Lcom/google/common/io/BaseEncoding;</exclusion> </exclusions> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <configuration> <rules> <compound implementation="com.github.ferstl.maven.pomenforcers.CompoundPedanticEnforcer"> <enforcers>POM_SECTION_ORDER,MODULE_ORDER,DEPENDENCY_MANAGEMENT_ORDER,DEPENDENCY_ORDER,DEPENDENCY_ELEMENT</enforcers> <pomSectionPriorities>modelVersion,parent,groupId,artifactId,version,name,description,packaging,url,inceptionYear,licenses,scm,properties,modules</pomSectionPriorities> <dependenciesGroupIdPriorities>io.trino,io.airlift</dependenciesGroupIdPriorities> <dependenciesOrderBy>scope,groupId,artifactId</dependenciesOrderBy> <dependenciesScopePriorities>compile,runtime,provided,test</dependenciesScopePriorities> <dependencyManagementOrderBy>groupId,artifactId</dependencyManagementOrderBy> <dependencyManagementGroupIdPriorities>io.trino,io.airlift</dependencyManagementGroupIdPriorities> <dependencyElementOrdering>groupId,artifactId,type,version</dependencyElementOrdering> </compound> <requireUpperBoundDeps> <excludes combine.children="append"> <!-- TODO: fix this in Airlift resolver --> <exclude>org.codehaus.plexus:plexus-utils</exclude> <exclude>com.google.guava:guava</exclude> <exclude>com.fasterxml.jackson.core:jackson-core</exclude> <exclude>com.google.j2objc:j2objc-annotations</exclude> </excludes> </requireUpperBoundDeps> <bannedDependencies> <excludes combine.children="append"> <!-- We don't use log4j2, additionally versions < 2.15.0 are vulnerable to the RCE Log4Shell (CVE-2021-44228) --> <exclude>org.apache.logging.log4j:log4j-core</exclude> </excludes> </bannedDependencies> </rules> </configuration> <dependencies> <dependency> <groupId>com.github.ferstl</groupId> <artifactId>pedantic-pom-enforcers</artifactId> <version>2.0.0</version> </dependency> </dependencies> </plugin> <plugin> <groupId>ca.vanzyl.provisio.maven.plugins</groupId> <artifactId>provisio-maven-plugin</artifactId> <version>1.0.18</version> </plugin> <plugin> <groupId>pl.project13.maven</groupId> <artifactId>git-commit-id-plugin</artifactId> <configuration> <runOnlyOnce>true</runOnlyOnce> <injectAllReactorProjects>true</injectAllReactorProjects> <offline>true</offline> <!-- A workaround to make build work in a Git worktree, see https://github.com/git-commit-id/git-commit-id-maven-plugin/issues/215 --> <useNativeGit>true</useNativeGit> </configuration> </plugin> <plugin> <groupId>org.basepom.maven</groupId> <artifactId>duplicate-finder-maven-plugin</artifactId> <configuration> <exceptions combine.children="append"> <exception> <conflictingDependencies> <dependency> <groupId>com.google.cloud.bigdataoss</groupId> <artifactId>gcs-connector</artifactId> </dependency> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> </dependency> </conflictingDependencies> <resources> <resource>mozilla/public-suffix-list.txt</resource> </resources> </exception> <exception> <conflictingDependencies> <dependency> <groupId>com.google.api</groupId> <artifactId>gax</artifactId> </dependency> <dependency> <groupId>com.google.cloud.bigdataoss</groupId> <artifactId>gcs-connector</artifactId> </dependency> </conflictingDependencies> <resources> <resource>dependencies.properties</resource> </resources> </exception> </exceptions> </configuration> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>io.trino</groupId> <artifactId>trino-maven-plugin</artifactId> <version>11</version> <extensions>true</extensions> </plugin> <plugin> <groupId>ca.vanzyl.provisio.maven.plugins</groupId> <artifactId>provisio-maven-plugin</artifactId> <extensions>true</extensions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration combine.children="append"> <fork>false</fork> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <includes> <!-- Tests classes should start with "Test", but we do also want to include tests incorrectly named, with "Test" at the end --> <include>**/Test*.java</include> <include>**/*Test.java</include> <include>**/Benchmark*.java</include> </includes> <excludes> <exclude>**/*jmhTest*.java</exclude> <exclude>**/*jmhType*.java</exclude> </excludes> </configuration> </plugin> </plugins> </build> <profiles> <profile> <id>errorprone-compiler</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <!--suppress MavenModelInspection --> <configuration combine.children="merge"> <!-- forking not required due to JVM flags in .mvn/jvm.config --> <!-- see https://errorprone.info/docs/installation#maven --> <compilerArgs> <arg>-XDcompilePolicy=simple</arg> <arg> -Xplugin:ErrorProne \ -Xep:BadInstanceof:ERROR \ -Xep:BoxedPrimitiveConstructor:ERROR \ -Xep:ClassCanBeStatic:ERROR \ -Xep:CompareToZero:ERROR \ -Xep:DefaultCharset:ERROR \ -Xep:EqualsGetClass:OFF <!-- we would rather want the opposite check --> \ -Xep:EqualsIncompatibleType:ERROR \ -Xep:FallThrough:ERROR \ -Xep:GuardedBy:OFF <!-- needs some careful inspection --> \ -Xep:HidingField:ERROR \ -Xep:ImmutableEnumChecker:OFF <!-- flags enums with List fields even if initialized with ImmutableList, and other false positives --> \ -Xep:ImmutableSetForContains:ERROR \ -Xep:InconsistentCapitalization:ERROR <!-- fields/variables should not differ only in case --> \ -Xep:InconsistentHashCode:ERROR \ -Xep:InjectOnConstructorOfAbstractClass:ERROR \ -Xep:MissingCasesInEnumSwitch:ERROR \ -Xep:MissingOverride:ERROR \ -Xep:MutablePublicArray:ERROR \ -Xep:NullOptional:ERROR \ -Xep:ObjectToString:ERROR \ -Xep:PreferredInterfaceType:OFF <!-- flags List fields even if initialized with ImmutableList --> \ -Xep:StreamResourceLeak:ERROR \ -Xep:UnnecessaryLambda:OFF <!-- we deliberately use it in a couple of places --> \ -Xep:UnnecessaryMethodReference:ERROR \ -Xep:UnnecessaryOptionalGet:ERROR \ -Xep:UnusedVariable:ERROR \ -Xep:UseEnumSwitch:ERROR \ -XepExcludedPaths:.*/target/generated-(|test-)sources/.* </arg> </compilerArgs> <annotationProcessorPaths> <path> <groupId>com.google.errorprone</groupId> <artifactId>error_prone_core</artifactId> <version>${dep.errorprone.version}</version> </path> </annotationProcessorPaths> </configuration> </plugin> </plugins> </build> </profile> <profile> <!-- Allow to run goals with an empty local Maven repository --> <id>disable-check-spi-dependencies</id> <build> <plugins> <plugin> <groupId>io.trino</groupId> <artifactId>trino-maven-plugin</artifactId> <executions> <execution> <id>default-check-spi-dependencies</id> <phase>none</phase> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>gib</id> <properties> <!-- the *local* master, not refs/remotes/... --> <gib.referenceBranch>master</gib.referenceBranch> </properties> <build> <plugins> <plugin> <groupId>io.github.gitflow-incremental-builder</groupId> <artifactId>gitflow-incremental-builder</artifactId> <version>4.1.1</version> <extensions>true</extensions> <configuration> <disableIfBranchMatches>master</disableIfBranchMatches> <compareToMergeBase>true</compareToMergeBase> <uncommitted>true</uncommitted> <untracked>true</untracked> <buildDownstream>true</buildDownstream> <buildUpstream>true</buildUpstream> <buildUpstreamMode>impacted</buildUpstreamMode> <!-- Skip tests and checks for upstream modules since they have not been modified but are still required to be built --> <skipTestsForUpstreamModules>true</skipTestsForUpstreamModules> <argsForUpstreamModules>-Dmaven.source.skip=true -Dair.check.skip-all</argsForUpstreamModules> <!-- Any modules selected with -pl will be built fully (with tests etc.) if the selected module itself is changed or one of its (non-selected) upstream modules --> <disableSelectedProjectsHandling>true</disableSelectedProjectsHandling> <failOnMissingGitDir>true</failOnMissingGitDir> <failOnError>true</failOnError> </configuration> </plugin> </plugins> </build> </profile> </profiles> </project>