Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 23 additions & 2 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@
<module>presto-benchmark-driver</module>
<module>presto-server</module>
<module>presto-server-rpm</module>
<module>presto-docs</module>
<!-- <module>presto-docs</module> build issues with docker-->
<module>presto-verifier</module>
<module>presto-testing-server-launcher</module>
<module>presto-plugin-toolkit</module>
Expand All @@ -147,6 +147,8 @@
<module>presto-pinot</module>
<module>presto-oracle</module>
<module>presto-druid</module>
<module>presto-delta-driver</module>
<module>presto-delta</module>
</modules>

<dependencyManagement>
Expand Down Expand Up @@ -443,7 +445,7 @@
<dependency>
<groupId>io.prestosql.hadoop</groupId>
<artifactId>hadoop-apache</artifactId>
<version>3.2.0-9</version>
<version>3.2.0-11-delta</version>
</dependency>

<dependency>
Expand Down Expand Up @@ -1193,6 +1195,25 @@
<version>${dep.jackson.version}</version>
</dependency>

<dependency>
<groupId>io.delta</groupId>
<artifactId>delta-standalone_2.12</artifactId>
<version>0.2.0</version>
</dependency>

<dependency>
<groupId>io.prestosql.delta</groupId>
<artifactId>presto-delta-driver</artifactId>
<classifier>shaded</classifier>
<version>${project.version}</version>
</dependency>

<dependency>
<groupId>io.prestosql</groupId>
<artifactId>presto-delta</artifactId>
<version>${project.version}</version>
</dependency>

<!-- force newer version to be used for dependencies -->
<dependency>
<groupId>org.javassist</groupId>
Expand Down
227 changes: 227 additions & 0 deletions presto-delta-driver/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,227 @@
<?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.prestosql</groupId>
<artifactId>presto-root</artifactId>
<version>339</version>
</parent>

<!-- coordinate of this module's output: shaded jar -->
<groupId>io.prestosql.delta</groupId>
<artifactId>presto-delta-driver</artifactId>
<name>presto-delta-driver</name>
<description>Presto - Delta Driver (Shaded Delta Standalone Reader)</description>
<packaging>jar</packaging>

<properties>
<assembly.attach>false</assembly.attach>
<jackson.version>2.6.7</jackson.version>
<shadeBase>io.prestosql.delta.internal</shadeBase>
</properties>

<dependencies>
<dependency>
<groupId>io.delta</groupId>
<artifactId>delta-standalone_2.12</artifactId>
<version>0.2.0</version>
</dependency>

<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.12.12</version>
</dependency>

<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>${jackson.version}</version>
</dependency>

<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${jackson.version}</version>
</dependency>

<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>

<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.8.0</version>
</dependency>
</dependencies>

<build>
<plugins>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.1.1</version>

<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<createSourcesJar>true</createSourcesJar>
<shadeSourcesContent>true</shadeSourcesContent>
<shadedArtifactAttached>true</shadedArtifactAttached>
<createDependencyReducedPom>true</createDependencyReducedPom>
<dependencyReducedPomLocation>${project.build.directory}</dependencyReducedPomLocation>
<artifactSet>
<includes>
<!-- these are the API+impl of DSR that we keep/publish -->
<include>io.delta:*</include>

<!-- shade (copy/rename) the following dependencies: -->
<include>com.fasterxml.jackson.core:jackson-core</include>
<include>com.fasterxml.jackson.core:jackson-databind</include>
<include>com.fasterxml.jackson.core:jackson-annotations</include>
<include>com.fasterxml.jackson.module:jackson-module-scala_2.12</include>
<include>com.fasterxml.jackson.module:jackson-module-paranamer</include>
<include>org.scala-lang:scala-library</include>
<include>commons-io:commons-io</include>

<!-- do not shade rename the following dependencies: -->
<include>com.thoughtworks.paranamer:paranamer</include>
<include>org.json4s:json4s-jackson_2.12</include>
<include>org.json4s:json4s-core_2.12</include>
<include>org.json4s:json4s-ast_2.12</include>
<include>org.json4s:json4s-scalap_2.12</include>
<include>org.scala-lang.modules:scala-xml_2.12</include>
<include>org.apache.hadoop:hadoop-client</include>
<include>org.apache.hadoop:hadoop-common</include>
<include>com.github.mjakubowski84:parquet4s-core_2.12</include>
<include>com.chuusai:shapeless_2.12</include>
<include>org.typelevel:macro-compat_2.12</include>
<include>org.scala-lang.modules:scala-collection-compat_2.12</include>
</includes>
<excludes>
<!-- The shaded JAR output is not dependent on any other Presto module so exclude them. -->
<exclude>io.prestosql.*</exclude>
</excludes>
</artifactSet>

<relocations>
<!-- covers jackson-core, jackson-databind, & jackson-annotation -->
<relocation>
<pattern>com.fasterxml.jackson</pattern>
<shadedPattern>${shadeBase}.com.fasterxml.jackson</shadedPattern>
</relocation>

<!-- covers jackson-module-scala_2.12 & jackson-module-paranamer -->
<relocation>
<pattern>com.fasterxml.jackson.module</pattern>
<shadedPattern>${shadeBase}.com.fasterxml.jackson.module</shadedPattern>
</relocation>

<!-- might need to skip this -->
<relocation>
<pattern>org.scala-lang</pattern>
<shadedPattern>${shadeBase}.org.scala-lang</shadedPattern>
</relocation>

<relocation>
<pattern>org.apache.commons.io</pattern>
<shadedPattern>${shadeBase}.org.apache.commons.io</shadedPattern>
</relocation>

</relocations>
<!-- exclude signed Manifests -->
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
<exclude>META-INF/maven/**</exclude>
</excludes>
</filter>
</filters>
</configuration>
</execution>
</executions>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<configuration>
<ignoredDependencies>
<ignoredDependency>org.scala-lang:scala-library:jar</ignoredDependency>
<ignoredDependency>io.delta:delta-standalone_2.12:jar</ignoredDependency>
<ignoredDependency>commons-io:commons-io:jar</ignoredDependency>
<ignoredDependency>com.fasterxml.jackson.module:jackson-module-scala_2.12:jar</ignoredDependency>
<ignoredDependency>com.fasterxml.jackson.core:jackson-core:jar</ignoredDependency>
<ignoredDependency>com.fasterxml.jackson.core:jackson-annotations:jar</ignoredDependency>
<ignoredDependency>com.fasterxml.jackson.core:jackson-databind:jar</ignoredDependency>
</ignoredDependencies>
</configuration>
<executions>
<execution>
<id>unpack</id>
<phase>package</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>io.prestosql.delta</groupId>
<artifactId>presto-delta-driver</artifactId>
<classifier>shaded</classifier>
<version>${project.version}</version>
<type>jar</type>
<overWrite>true</overWrite>
<outputDirectory>${project.build.directory}/classes</outputDirectory>
<includes>**/**</includes>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>

<!-- Turn off the modernizer plugin since this shading module has no source file -->
<plugin>
<groupId>org.gaul</groupId>
<artifactId>modernizer-maven-plugin</artifactId>
<version>1.7.1</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<configuration>
<rules>
<requireUpperBoundDeps>
<excludes combine.children="append">
<exclude>org.alluxio:alluxio-shaded-client</exclude>
<exclude>org.codehaus.plexus:plexus-utils</exclude>
<exclude>com.fasterxml.jackson.core:jackson-core</exclude>
<exclude>com.google.guava:guava</exclude>
<exclude>com.fasterxml.jackson.core:jackson-annotations</exclude>
<exclude>com.fasterxml.jackson.core:jackson-databind</exclude>
</excludes>
</requireUpperBoundDeps>
</rules>
</configuration>
</plugin>
</plugins>
</build>

</project>
Loading