JingsongLi commented on code in PR #1: URL: https://github.com/apache/incubator-paimon-presto/pull/1#discussion_r1170718525
########## pom.xml: ########## @@ -0,0 +1,623 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +Licensed to the Apache Software Foundation (ASF) under one +or more contributor license agreements. See the NOTICE file +distributed with this work for additional information +regarding copyright ownership. The ASF licenses this file +to you under the Apache License, Version 2.0 (the +"License"); you may not use this file except in compliance +with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, +software distributed under the License is distributed on an +"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +KIND, either express or implied. See the License for the +specific language governing permissions and limitations +under the License. +--> +<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> + + <modules> + <module>paimon-presto-common</module> + <module>paimon-presto-0.273</module> + <module>paimon-presto-0.268</module> + <module>paimon-presto-0.236</module> + </modules> + + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>23</version> + </parent> + + <groupId>org.apache.paimon</groupId> + <artifactId>paimon-presto</artifactId> + <name>Paimon : Presto</name> + <version>0.4-SNAPSHOT</version> + + <packaging>pom</packaging> + + <url>https://paimon.apache.org</url> + <inceptionYear>2023</inceptionYear> + + <licenses> + <license> + <name>The Apache Software License, Version 2.0</name> + <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url> + <distribution>repo</distribution> + </license> + </licenses> + + <scm> + <url>https://github.com/apache/incubator-paimon-presto</url> + <connection>[email protected]:apache/incubator-paimon-presto.git</connection> + <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/incubator-paimon-presto.git</developerConnection> + </scm> + + <properties> + <target.java.version>1.8</target.java.version> + <junit5.version>5.8.1</junit5.version> + <slf4j.version>1.7.25</slf4j.version> + <log4j.version>2.17.1</log4j.version> + <guava.version>31.1-jre</guava.version> + <commons-lang3.version>3.3.2</commons-lang3.version> + <findbugs.version>1.3.9</findbugs.version> + <maven.checkstyle.version>3.1.2</maven.checkstyle.version> + <maven.compiler.version>3.10.1</maven.compiler.version> + <spotless.version>2.13.0</spotless.version> + <spotless.delimiter>package</spotless.delimiter> + <spotless.license.header> + /* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + </spotless.license.header> + </properties> + + <dependencies> + <dependency> + <groupId>org.apache.paimon</groupId> + <artifactId>paimon-bundle</artifactId> + <version>${project.version}</version> + <exclusions> + <exclusion> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + </exclusion> + <exclusion> + <groupId>com.google.guava</groupId> + <artifactId>guava</artifactId> + </exclusion> + </exclusions> + </dependency> + + <dependency> + <groupId>org.junit.jupiter</groupId> + <artifactId>junit-jupiter</artifactId> + <version>${junit5.version}</version> + </dependency> + + <dependency> + <groupId>com.google.guava</groupId> + <artifactId>guava</artifactId> + <version>${guava.version}</version> + </dependency> + + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + <version>${slf4j.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-slf4j-impl</artifactId> + <version>${log4j.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-api</artifactId> + <version>${log4j.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-core</artifactId> + <version>${log4j.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.logging.log4j</groupId> + <artifactId>log4j-1.2-api</artifactId> + <version>${log4j.version}</version> + </dependency> + + <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-lang3</artifactId> + <version>${commons-lang3.version}</version> + </dependency> + + <dependency> + <groupId>com.google.code.findbugs</groupId> + <artifactId>jsr305</artifactId> + <version>${findbugs.version}</version> + </dependency> + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <version>${maven.compiler.version}</version> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <version>${maven.checkstyle.version}</version> + </plugin> + + <plugin> + <groupId>com.diffplug.spotless</groupId> + <artifactId>spotless-maven-plugin</artifactId> + <version>${spotless.version}</version> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <version>3.8.0</version> + <configuration> + <source>${target.java.version}</source> + <target>${target.java.version}</target> + <!-- The semantics of this option are reversed, see MCOMPILER-209. --> + <useIncrementalCompilation>false</useIncrementalCompilation> + <compilerArgs> + <!-- Prevents recompilation due to missing package-info.class, see MCOMPILER-205 --> + <arg>-Xpkginfo:always</arg> + </compilerArgs> + </configuration> + </plugin> + + <plugin> + <groupId>org.apache.rat</groupId> + <artifactId>apache-rat-plugin</artifactId> + <version>0.15</version> + <inherited>false</inherited> + <executions> + <execution> + <phase>verify</phase> + <goals> + <goal>check</goal> + </goals> + </execution> + </executions> + <configuration> + <excludeSubProjects>false</excludeSubProjects> + <numUnapprovedLicenses>0</numUnapprovedLicenses> + <licenses> + <!-- Enforce this license: + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + http://www.apache.org/licenses/LICENSE-2.0 + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + --> + <license implementation="org.apache.rat.analysis.license.SimplePatternBasedLicense"> + <licenseFamilyCategory>AL2</licenseFamilyCategory> + <licenseFamilyName>Apache License 2.0</licenseFamilyName> + <notes/> + <patterns> + <pattern>Licensed to the Apache Software Foundation (ASF) under one</pattern> + </patterns> + </license> + </licenses> + <licenseFamilies> + <licenseFamily implementation="org.apache.rat.license.SimpleLicenseFamily"> + <familyName>Apache License 2.0</familyName> + </licenseFamily> + </licenseFamilies> + <excludes> + <!-- Additional files like .gitignore etc.--> + <exclude>**/.*/**</exclude> + <exclude>**/*.prefs</exclude> + <exclude>**/*.log</exclude> + <!-- Administrative files in the main trunk. --> + <exclude>**/README.md</exclude> + <exclude>**/CODE_OF_CONDUCT.md</exclude> + <exclude>.github/**</exclude> + <!-- IDE files. --> + <exclude>**/*.iml</exclude> + <exclude>**/.idea/**</exclude> + <!-- Generated content --> + <exclude>**/target/**</exclude> + <exclude>**/scalastyle-output.xml</exclude> + <exclude>docs/static/font-awesome/**</exclude> + <exclude>docs/resources/**</exclude> + <exclude>docs/public/**</exclude> + <exclude>docs/themes/book/**</exclude> + <exclude>docs/assets/github.css</exclude> + <exclude>docs/static/js/anchor.min.js</exclude> + <exclude>docs/layouts/shortcodes/generated/**</exclude> + <exclude>**/*.svg</exclude> + <!-- Bundled license files --> + <exclude>**/LICENSE*</exclude> + <!-- artifacts created during release process --> + <exclude>release/**</exclude> + <!-- antlr grammar files --> + <exclude>paimon-common/src/main/antlr4/**</exclude> + <!-- Test files --> + <exclude>paimon-common/src/test/resources/codesplit/**</exclude> + </excludes> + </configuration> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-enforcer-plugin</artifactId> + <executions> + <execution> + <id>enforce-maven</id> + <goals> + <goal>enforce</goal> + </goals> + <configuration> + <rules> + <requireMavenVersion> + <!-- enforce at least mvn version 3.1.1 (see FLINK-12447) --> + <version>[3.1.1,)</version> + </requireMavenVersion> + <requireJavaVersion> + <version>${target.java.version}</version> + </requireJavaVersion> + </rules> + </configuration> + </execution> + <execution> + <id>ban-unsafe-snakeyaml</id> + <goals> + <goal>enforce</goal> + </goals> + <configuration> + <rules> + <bannedDependencies> + <excludes> + <exclude>org.yaml:snakeyaml:(,1.26]</exclude> + </excludes> + <includes> + <!-- Snakeyaml is pulled in by many modules without using it in production, + so there's no benefit in us investing time into bumping these. --> + <include>org.yaml:snakeyaml:(,1.26]:*:test</include> + </includes> + </bannedDependencies> + </rules> + </configuration> + </execution> + <execution> + <id>ban-unsafe-jackson</id> + <goals> + <goal>enforce</goal> + </goals> + <configuration> + <rules> + <bannedDependencies> + <excludes> + <exclude>com.fasterxml.jackson*:*:(,2.7.0]</exclude> + </excludes> + </bannedDependencies> + </rules> + </configuration> + </execution> + <execution> + <id>forbid-log4j-1</id> + <goals> + <goal>enforce</goal> + </goals> + <configuration> + <rules> + <bannedDependencies> + <excludes> + <exclude>log4j:log4j</exclude> + <exclude>org.slf4j:slf4j-log4j12</exclude> + </excludes> + </bannedDependencies> + </rules> + </configuration> + </execution> + <execution> + <id>dependency-convergence</id> + <!-- disabled by default as it interacts badly with shade-plugin --> + <phase>none</phase> + <goals> + <goal>enforce</goal> + </goals> + <configuration> + <rules> + <dependencyConvergence/> + </rules> + </configuration> + </execution> + </executions> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-shade-plugin</artifactId> + <executions> + <execution> + <id>shade-paimon</id> + <phase>package</phase> + <goals> + <goal>shade</goal> + </goals> + <configuration> + <shadeTestJar>true</shadeTestJar> + <shadedArtifactAttached>false</shadedArtifactAttached> + <createDependencyReducedPom>true</createDependencyReducedPom> + <!-- Filters MUST be appended; merging filters does not work properly, see MSHADE-305 --> + <filters combine.children="append"> + <!-- Globally exclude log4j.properties from our JAR files. --> + <filter> + <artifact>*</artifact> + <excludes> + <exclude>log4j.properties</exclude> + <exclude>log4j2.properties</exclude> + <exclude>log4j-test.properties</exclude> + <exclude>log4j2-test.properties</exclude> + </excludes> + </filter> + <!-- drop entries into META-INF and NOTICE files for the dummy artifact --> + <filter> + <artifact>org.apache.flink:force-shading</artifact> + <excludes> + <exclude>**</exclude> + </excludes> + </filter> + <!-- io.netty:netty brings its own LICENSE.txt which we don't need --> + <filter> + <artifact>io.netty:netty</artifact> + <excludes> + <exclude>META-INF/LICENSE.txt</exclude> + </excludes> + </filter> + </filters> + <artifactSet> + <includes> + <!-- Unfortunately, the next line is necessary for now to force the execution + of the Shade plugin upon all sub modules. This will generate effective poms, + i.e. poms which do not contain properties which are derived from this root pom. + In particular, the Scala version properties are defined in the root pom and without + shading, the root pom would have to be Scala suffixed and thereby all other modules. + --> + <include>org.apache.flink:force-shading</include> + </includes> + </artifactSet> + <transformers combine.children="append"> + <!-- The service transformer is needed to merge META-INF/services files --> + <transformer + implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/> + <!-- The ApacheNoticeResourceTransformer collects and aggregates NOTICE files --> + <transformer + implementation="org.apache.maven.plugins.shade.resource.ApacheNoticeResourceTransformer"> + <projectName>Apache Paimon (incubating)</projectName> + <inceptionYear>${project.inceptionYear}</inceptionYear> + <encoding>UTF-8</encoding> + </transformer> + </transformers> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + <pluginManagement> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>1.7</version> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <version>3.8.0</version> + <configuration> + <source>${target.java.version}</source> + <target>${target.java.version}</target> + <!-- The semantics of this option are reversed, see MCOMPILER-209. --> + <useIncrementalCompilation>false</useIncrementalCompilation> + <compilerArgs> + <!-- Prevents recompilation due to missing package-info.class, see MCOMPILER-205 --> + <arg>-Xpkginfo:always</arg> + </compilerArgs> + </configuration> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-checkstyle-plugin</artifactId> + <version>2.17</version> + <dependencies> + <dependency> + <groupId>com.puppycrawl.tools</groupId> + <artifactId>checkstyle</artifactId> + <!-- Note: match version with docs/flinkDev/ide_setup.md --> + <version>8.14</version> + </dependency> + </dependencies> + <executions> + <execution> + <id>validate</id> + <phase>validate</phase> + <goals> + <goal>check</goal> + </goals> + </execution> + </executions> + <configuration> + <suppressionsLocation>/tools/maven/suppressions.xml</suppressionsLocation> + <includeTestSourceDirectory>true</includeTestSourceDirectory> + <configLocation>/tools/maven/checkstyle.xml</configLocation> + <logViolationsToConsole>true</logViolationsToConsole> + <failOnViolation>true</failOnViolation> + </configuration> + </plugin> + + <plugin> + <groupId>com.diffplug.spotless</groupId> + <artifactId>spotless-maven-plugin</artifactId> + <version>${spotless.version}</version> + <configuration> + <java> + <googleJavaFormat> + <version>1.7</version> + <style>AOSP</style> + </googleJavaFormat> + + <!-- \# refers to the static imports --> + <importOrder> + <order>org.apache.paimon,org.apache.paimon.shaded,,javax,java,scala,\#</order> + </importOrder> + + <removeUnusedImports/> + </java> + </configuration> + <executions> + <execution> + <id>spotless-check</id> + <phase>validate</phase> + <goals> + <goal>check</goal> + </goals> + </execution> + </executions> + </plugin> + + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-javadoc-plugin</artifactId> + <version>2.9.1</version><!--$NO-MVN-MAN-VER$--> + <configuration> + <quiet>true</quiet> + <detectOfflineLinks>false</detectOfflineLinks> + <additionalJOptions combine.children="append"> + <additionalJOption>-Xdoclint:none</additionalJOption> + </additionalJOptions> + </configuration> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-enforcer-plugin</artifactId> + <version>3.0.0-M1</version> + </plugin> + + <!-- Pin the version of the maven shade plugin --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-shade-plugin</artifactId> + <version>3.4.1</version> + </plugin> + + <!-- configure scala style --> + <plugin> + <groupId>org.scalastyle</groupId> + <artifactId>scalastyle-maven-plugin</artifactId> + <version>1.0.0</version> + <executions> + <execution> + <goals> + <goal>check</goal> + </goals> + </execution> + </executions> + <configuration> + <verbose>false</verbose> + <failOnViolation>true</failOnViolation> + <includeTestSourceDirectory>true</includeTestSourceDirectory> + <failOnWarning>false</failOnWarning> + <sourceDirectory>${basedir}/src/main/scala</sourceDirectory> + <testSourceDirectory>${basedir}/src/test/scala</testSourceDirectory> + <outputFile>${project.basedir}/target/scalastyle-output.xml</outputFile> + <inputEncoding>UTF-8</inputEncoding> + <outputEncoding>UTF-8</outputEncoding> + </configuration> + </plugin> + + <plugin> + <!-- Inherited from Apache parent, but not actually used. Disable to reduce noise. --> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-site-plugin</artifactId> + <executions> + <execution> + <id>attach-descriptor</id> + <phase>none</phase> + </execution> + </executions> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-remote-resources-plugin</artifactId> + <version>1.7.0</version> + <executions> + <execution> + <goals> + <goal>process</goal> + </goals> + <configuration> + <resourceBundles> + <resourceBundle>org.apache.apache.resources:apache-incubator-disclaimer-resource-bundle:1.5</resourceBundle> + </resourceBundles> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </pluginManagement> + </build> + + <repositories> Review Comment: remove this? see: https://github.com/apache/incubator-paimon/pull/927 -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
