Two things happening in this PR. 1. We're removing QueryDSL. 2. We're adding [Errorprone](http://errorprone.info/). Why both together? Because I can't get the build to work, if I remove QueryDSL, and not add any other annotation processor. Lombok is refusing to do its thing, unless there is at least one other annotation processor, which QueryDSL was filling in for. I wanted to add Errorprone anyway in a separate task, so didn't investigate further and just added it here. But adding Errorprone is not the idea for now. So all lint rules are disable, and it has no affect on build time either. We'll slowly roll out some of the checks and lint rules in the coming weeks.
218 lines
9.4 KiB
XML
218 lines
9.4 KiB
XML
<?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>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-parent</artifactId>
|
|
<version>3.0.9</version>
|
|
<relativePath/>
|
|
<!-- lookup parent from repository -->
|
|
</parent>
|
|
<groupId>com.appsmith</groupId>
|
|
<artifactId>integrated</artifactId>
|
|
<version>1.0-SNAPSHOT</version>
|
|
<packaging>pom</packaging>
|
|
<name>Integrated Appsmith</name>
|
|
|
|
<modules>
|
|
<module>reactive-caching</module>
|
|
<module>appsmith-interfaces</module>
|
|
<module>appsmith-plugins</module>
|
|
<module>appsmith-server</module>
|
|
<module>appsmith-git</module>
|
|
</modules>
|
|
|
|
<properties>
|
|
<deploy.disabled>true</deploy.disabled>
|
|
<error-prone.version>2.26.1</error-prone.version>
|
|
<java.version>17</java.version>
|
|
<javadoc.disabled>true</javadoc.disabled>
|
|
<logback.version>1.4.14</logback.version>
|
|
<maven.compiler.source>${java.version}</maven.compiler.source>
|
|
<maven.compiler.target>${java.version}</maven.compiler.target>
|
|
<mockito.version>4.4.0</mockito.version>
|
|
<mockwebserver.version>5.0.0-alpha.2</mockwebserver.version>
|
|
<okhttp3.version>4.10.0</okhttp3.version>
|
|
<org.pf4j.version>3.10.0</org.pf4j.version>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<project.groupId>com.appsmith</project.groupId>
|
|
<project.version>1.0-SNAPSHOT</project.version>
|
|
<reactor-test.version>3.5.1</reactor-test.version>
|
|
<!-- By default skip the dockerization step. Only activate if necessary -->
|
|
<skipDockerBuild>true</skipDockerBuild>
|
|
<!-- We're forcing this version temporarily to fix CVE-2022-1471-->
|
|
<snakeyaml.version>2.0</snakeyaml.version>
|
|
<source.disabled>true</source.disabled>
|
|
<spotless.version>2.36.0</spotless.version>
|
|
<spring-boot.version>3.0.9</spring-boot.version>
|
|
<testcontainers.version>1.19.3</testcontainers.version>
|
|
</properties>
|
|
|
|
<build>
|
|
<resources>
|
|
<resource>
|
|
<filtering>false</filtering>
|
|
<directory>src/main/java</directory>
|
|
<excludes>
|
|
<exclude>**/*.java</exclude>
|
|
</excludes>
|
|
</resource>
|
|
<resource>
|
|
<directory>src/main/resources</directory>
|
|
</resource>
|
|
</resources>
|
|
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.codehaus.mojo</groupId>
|
|
<artifactId>license-maven-plugin</artifactId>
|
|
<version>2.0.0</version>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-dependency-plugin</artifactId>
|
|
<version>3.4.0</version>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>${maven-compiler-plugin.version}</version>
|
|
<configuration>
|
|
<showWarnings>true</showWarnings>
|
|
<compilerArgs>
|
|
<arg>-XDcompilePolicy=simple</arg>
|
|
<arg>
|
|
<!-- Ref: http://errorprone.info/docs/flags -->
|
|
-Xplugin:ErrorProne \
|
|
-XepDisableAllChecks
|
|
</arg>
|
|
</compilerArgs>
|
|
<annotationProcessorPaths>
|
|
<path>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<version>${lombok.version}</version>
|
|
</path>
|
|
<path>
|
|
<groupId>com.google.errorprone</groupId>
|
|
<artifactId>error_prone_core</artifactId>
|
|
<version>${error-prone.version}</version>
|
|
</path>
|
|
</annotationProcessorPaths>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>3.0.0-M5</version>
|
|
<configuration>
|
|
<printSummary>true</printSummary>
|
|
<!-- Allow JUnit to access the test classes -->
|
|
<argLine>--add-opens java.base/java.lang=ALL-UNNAMED
|
|
--add-opens java.base/java.time=ALL-UNNAMED
|
|
--add-opens java.base/java.util=ALL-UNNAMED</argLine>
|
|
</configuration>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>org.junit.jupiter</groupId>
|
|
<artifactId>junit-jupiter-engine</artifactId>
|
|
<version>5.6.2</version>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>org.junit.platform</groupId>
|
|
<artifactId>junit-platform-commons</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
</dependencies>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-enforcer-plugin</artifactId>
|
|
<version>3.1.0</version>
|
|
<executions>
|
|
<execution>
|
|
<id>default-cli</id>
|
|
<goals>
|
|
<goal>enforce</goal>
|
|
</goals>
|
|
<configuration>
|
|
<rules>
|
|
<bannedDependencies>
|
|
<excludes>
|
|
<exclude>junit:junit</exclude>
|
|
</excludes>
|
|
</bannedDependencies>
|
|
</rules>
|
|
<fail>true</fail>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>com.diffplug.spotless</groupId>
|
|
<artifactId>spotless-maven-plugin</artifactId>
|
|
<version>${spotless.version}</version>
|
|
<configuration>
|
|
<formats>
|
|
<!-- you can define as many formats as you want, each is independent -->
|
|
<format>
|
|
<!-- define the files to apply to -->
|
|
<includes>
|
|
<include>*.md</include>
|
|
<include>.gitignore</include>
|
|
</includes>
|
|
<!-- define the steps to apply to those files -->
|
|
<trimTrailingWhitespace/>
|
|
<endWithNewline/>
|
|
<indent>
|
|
<tabs>true</tabs>
|
|
<spacesPerTab>2</spacesPerTab>
|
|
</indent>
|
|
</format>
|
|
</formats>
|
|
<!-- define a language-specific format -->
|
|
<java>
|
|
<!-- Cleanthat will refactor your code, but it may break your style: apply it before your formatter -->
|
|
<cleanthat/>
|
|
<!-- apply a specific flavor of google-java-format and reflow long strings -->
|
|
<palantirJavaFormat/>
|
|
<importOrder>
|
|
<order>,javax|java,\#</order>
|
|
</importOrder>
|
|
<removeUnusedImports/>
|
|
<formatAnnotations/>
|
|
</java>
|
|
<pom>
|
|
<includes>
|
|
<include>pom.xml</include>
|
|
</includes>
|
|
<sortPom>
|
|
<encoding>UTF-8</encoding>
|
|
<keepBlankLines>true</keepBlankLines>
|
|
<nrOfIndentSpace>4</nrOfIndentSpace>
|
|
<indentBlankLines>false</indentBlankLines>
|
|
<indentSchemaLocation>true</indentSchemaLocation>
|
|
<expandEmptyElements>false</expandEmptyElements>
|
|
<sortProperties>true</sortProperties>
|
|
</sortPom>
|
|
</pom>
|
|
</configuration>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>apply</goal>
|
|
</goals>
|
|
<!-- This gets triggered automatically when we run the build script -->
|
|
<phase>compile</phase>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
|
|
</build>
|
|
|
|
</project>
|