Files
WrenAI/pom.xml
T
2022-05-20 16:56:00 +08:00

502 lines
21 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" 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>107</version>
</parent>
<groupId>io.cml</groupId>
<artifactId>cml-root</artifactId>
<version>1</version>
<name>cml</name>
<description>canner-metric-layer</description>
<packaging>pom</packaging>
<inceptionYear>2022</inceptionYear>
<licenses>
<license>
<name>Apache License 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0</url>
<distribution>repo</distribution>
</license>
</licenses>
<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>
<air.check.fail-duplicate-finder>false</air.check.fail-duplicate-finder>
<air.check.fail-license>false</air.check.fail-license>
<project.build.targetJdk>11</project.build.targetJdk>
<air.java.version>11.0.7</air.java.version>
<air.modernizer.java-version>8</air.modernizer.java-version>
<dep.antlr.version>4.9</dep.antlr.version>
<dep.airlift.version>203</dep.airlift.version>
<dep.packaging.version>${dep.airlift.version}</dep.packaging.version>
<dep.drift.version>1.14</dep.drift.version>
<dep.errorprone.version>2.13.0</dep.errorprone.version>
<netty.version>4.1.45.Final</netty.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>core/cml-main</module>
<module>core/cml-postgres-wire-protocol</module>
<module>core/cml-server</module>
<module>core/cml-spi</module>
<module>core/trino-parser</module>
</modules>
<repositories>
<repository>
<id>confluent</id>
<url>http://packages.confluent.io/maven/</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>central</id>
<name>Central Repository</name>
<url>https://repo.maven.apache.org/maven2</url>
<layout>default</layout>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<dependencyManagement>
<dependencies>
<!-- Airlift -->
<dependency>
<groupId>io.airlift</groupId>
<artifactId>bootstrap</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>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>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.6</version>
</dependency>
<dependency>
<groupId>com.carrotsearch</groupId>
<artifactId>hppc</artifactId>
<version>0.9.1</version>
</dependency>
<!-- TODO: move this to Airbase -->
<dependency>
<groupId>com.fasterxml.jackson.dataformat</groupId>
<artifactId>jackson-dataformat-cbor</artifactId>
<version>${dep.jackson.version}</version>
</dependency>
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>libraries-bom</artifactId>
<version>25.2.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.google.errorprone</groupId>
<artifactId>error_prone_annotations</artifactId>
<version>${dep.errorprone.version}</version>
</dependency>
<dependency>
<groupId>com.google.protobuf</groupId>
<artifactId>protobuf-java</artifactId>
<version>3.19.4</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.15</version>
</dependency>
<dependency>
<groupId>io.cml</groupId>
<artifactId>cml-main</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.cml</groupId>
<artifactId>cml-postgres-wire-protocol</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.cml</groupId>
<artifactId>cml-spi</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.cml</groupId>
<artifactId>trino-parser</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.opencensus</groupId>
<artifactId>opencensus-api</artifactId>
<version>0.31.0</version>
</dependency>
<dependency>
<groupId>it.unimi.dsi</groupId>
<artifactId>fastutil</artifactId>
<version>8.3.0</version>
</dependency>
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-runtime</artifactId>
<version>${dep.antlr.version}</version>
</dependency>
<!-- TODO: move this to Airbase -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-math3</artifactId>
<version>3.6.1</version>
</dependency>
<dependency>
<groupId>org.checkerframework</groupId>
<artifactId>checker-qual</artifactId>
<version>3.21.4</version>
</dependency>
<dependency>
<groupId>org.jetbrains</groupId>
<artifactId>annotations</artifactId>
<version>19.0.0</version>
</dependency>
<dependency>
<groupId>org.threeten</groupId>
<artifactId>threetenbp</artifactId>
<version>1.6.0</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.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.8</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>
</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</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>
</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>
<!-- We don't use log4j2, additionally versions < 2.17.0 are vulnerable to the RCE Log4Shell (CVE-2021-44228) -->
<exclude>org.apache.logging.log4j:log4j-core</exclude>
</excludes>
</bannedDependencies>
</rules>
</configuration>
<dependencies>
<!--
maven-enforcer exists some issues for analyzing `org.bouncycastle:bcprov-jdk15on`.
Overwrite dependency of enforcer-plugin to fix it.
https://issues.apache.org/jira/browse/MENFORCER-367
-->
<dependency>
<groupId>org.codehaus.mojo</groupId>
<artifactId>extra-enforcer-rules</artifactId>
<version>1.3</version>
</dependency>
<dependency>
<groupId>com.github.ferstl</groupId>
<artifactId>pedantic-pom-enforcers</artifactId>
<version>1.3.2</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<preparationGoals>clean verify -DskipTests</preparationGoals>
</configuration>
</plugin>
<plugin>
<groupId>ca.vanzyl.provisio.maven.plugins</groupId>
<artifactId>provisio-maven-plugin</artifactId>
<version>1.0.9</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<groupId>io.trino</groupId>
<artifactId>trino-maven-plugin</artifactId>
<version>10</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">
<compilerArgs>
<arg>-XDcompilePolicy=simple</arg>
<!-- TODO enable more checks, i.e. remove "-XepDisableAllChecks" -->
<arg>
-Xplugin:ErrorProne
-XepExcludedPaths:.*/target/generated-(|test-)sources/.*
-XepDisableAllChecks
-Xep:ArrayEquals:ERROR
-Xep:ArrayHashCode:ERROR
-Xep:ArrayToString:ERROR
-Xep:ArraysAsListPrimitiveArray:ERROR
-Xep:BadInstanceof:ERROR
-Xep:BadShiftAmount:ERROR
-Xep:BoxedPrimitiveConstructor:ERROR
-Xep:ClassCanBeStatic:ERROR
-Xep:CompareToZero:ERROR
-Xep:ComparingThisWithNull:ERROR
-Xep:EqualsIncompatibleType:ERROR
-Xep:FallThrough:ERROR
-Xep:FormatString:ERROR
-Xep:GetClassOnAnnotation:ERROR
-Xep:GetClassOnClass:ERROR
-Xep:IdentityBinaryExpression:ERROR
-Xep:ImmutableSetForContains:ERROR
-Xep:InconsistentHashCode:ERROR
-Xep:InjectOnConstructorOfAbstractClass:ERROR
-Xep:MissingCasesInEnumSwitch:ERROR
-Xep:MissingOverride:ERROR
-Xep:MisusedWeekYear:ERROR
-Xep:NullOptional:ERROR
-Xep:ObjectToString:ERROR
-Xep:OptionalEquality:ERROR
-Xep:OptionalMapUnusedValue:ERROR
-Xep:PreconditionsInvalidPlaceholder:ERROR
-Xep:ReturnValueIgnored:ERROR
-Xep:StaticQualifiedUsingExpression:ERROR
-Xep:ThrowIfUncheckedKnownChecked:ERROR
-Xep:UnnecessaryCheckNotNull:ERROR
-Xep:UnnecessaryMethodReference:ERROR
-Xep:UnnecessaryOptionalGet:ERROR
-Xep:UnusedVariable:ERROR
-Xep:UseEnumSwitch:ERROR
-Xep:ZoneIdOfZ:ERROR
</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>
</profiles>
</project>