summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTeemu Suo-Anttila <tsuoanttila@users.noreply.github.com>2018-08-24 08:11:37 +0300
committerGitHub <noreply@github.com>2018-08-24 08:11:37 +0300
commitf8b30a789399a2c61e8a3564b7b3e2a72a57d428 (patch)
tree42f389bb908eaf101e52a81008730c9d29eb8921
parent189987761b05e789574ddf5965a740972c77e2a1 (diff)
downloadvaadin-framework-f8b30a789399a2c61e8a3564b7b3e2a72a57d428.tar.gz
vaadin-framework-f8b30a789399a2c61e8a3564b7b3e2a72a57d428.zip
Add API comparison plugin and profile (#11136)
-rw-r--r--all/pom.xml8
-rw-r--r--pom.xml61
2 files changed, 69 insertions, 0 deletions
diff --git a/all/pom.xml b/all/pom.xml
index 4ce0a751f1..1193db4de9 100644
--- a/all/pom.xml
+++ b/all/pom.xml
@@ -73,6 +73,14 @@
<build>
<plugins>
+ <plugin>
+ <groupId>com.github.siom79.japicmp</groupId>
+ <artifactId>japicmp-maven-plugin</artifactId>
+ <version>0.9.1</version>
+ <configuration>
+ <skip>true</skip>
+ </configuration>
+ </plugin>
<!-- Release Notes -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
diff --git a/pom.xml b/pom.xml
index 5dcfcf7d4a..5e54a459d2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -417,6 +417,67 @@
</plugins>
</build>
</profile>
+ <profile>
+ <!-- This profile is disjoint with default profile. It allows
+ to prevent running build for all available modules but restricts a number
+ of modules to specified here only (which allows to avoid long time compilation
+ for projects that are not needed since japicmp works with compiled classes).
+ ! -->
+ <id>apicmp</id>
+ <modules>
+ <module>server</module>
+ <module>push</module>
+ <module>client</module>
+ <module>client-compiler</module>
+ <module>shared</module>
+ </modules>
+ <repositories>
+ <repository>
+ <id>vaadin-prereleases</id>
+ <url>http://maven.vaadin.com/vaadin-prereleases</url>
+ </repository>
+ </repositories>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>com.github.siom79.japicmp</groupId>
+ <artifactId>japicmp-maven-plugin</artifactId>
+ <version>0.9.1</version>
+ <configuration>
+ <oldVersion>
+ <dependency>
+ <groupId>${project.groupId}</groupId>
+ <artifactId>${project.artifactId}</artifactId>
+ <version>${vaadin.api.reference.version}</version>
+ <type>jar</type>
+ </dependency>
+ </oldVersion>
+ <newVersion>
+ <file>
+ <path>${project.build.directory}/${project.artifactId}-${project.version}.${project.packaging}</path>
+ </file>
+ </newVersion>
+ <parameter>
+ <ignoreMissingClasses>true</ignoreMissingClasses>
+ <onlyModified>true</onlyModified>
+ <skipDiffReport>true</skipDiffReport>
+ <skipXmlReport>true</skipXmlReport>
+ <ignoreMissingOldVersion>true</ignoreMissingOldVersion>
+ <ignoreMissingNewVersion>true</ignoreMissingNewVersion>
+ </parameter>
+ </configuration>
+ <executions>
+ <execution>
+ <phase>verify</phase>
+ <goals>
+ <goal>cmp</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
</profiles>
</project>