Add japicmp - breaks build based on semantic versioning

This commit is contained in:
Andreas Dangel 2024-04-04 15:20:15 +02:00
parent 280b1a1ee3
commit 4fe50978b6
No known key found for this signature in database
GPG Key ID: 93450DF2DF9A3FA3
13 changed files with 199 additions and 0 deletions

View File

@ -30,6 +30,18 @@
</offlineLinks>
</configuration>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<configuration>
<parameter>
<excludes combine.children="append">
<exclude>net.sourceforge.pmd.ant.internal</exclude>
</excludes>
</parameter>
</configuration>
</plugin>
</plugins>
</build>

View File

@ -55,6 +55,20 @@
<groupId>org.jetbrains.dokka</groupId>
<artifactId>dokka-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<configuration>
<parameter>
<excludes combine.children="append">
<exclude>net.sourceforge.pmd.lang.apex.internal</exclude>
<exclude>net.sourceforge.pmd.lang.apex.metrics.internal</exclude>
<exclude>net.sourceforge.pmd.lang.apex.rule.internal</exclude>
</excludes>
</parameter>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>

View File

@ -20,6 +20,21 @@
<suppressionsLocation>pmd-cli-checkstyle-suppressions.xml</suppressionsLocation>
</configuration>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<configuration>
<parameter>
<excludes combine.children="append">
<exclude>net.sourceforge.pmd.cli.internal</exclude>
<exclude>net.sourceforge.pmd.cli.commands.internal</exclude>
<exclude>net.sourceforge.pmd.cli.commands.mixins.internal</exclude>
<exclude>net.sourceforge.pmd.cli.commands.typesupport.internal</exclude>
</excludes>
</parameter>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>

View File

@ -76,6 +76,26 @@
<offlineLinks combine.self="override"></offlineLinks>
</configuration>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<configuration>
<parameter>
<excludes combine.children="append">
<exclude>net.sourceforge.pmd.internal</exclude>
<exclude>net.sourceforge.pmd.cache.internal</exclude>
<exclude>net.sourceforge.pmd.cpd.internal</exclude>
<exclude>net.sourceforge.pmd.lang.ast.internal</exclude>
<exclude>net.sourceforge.pmd.lang.rule.internal</exclude>
<exclude>net.sourceforge.pmd.lang.rule.xpath.internal</exclude>
<exclude>net.sourceforge.pmd.properties.internal</exclude>
<exclude>net.sourceforge.pmd.renderers.internal</exclude>
<exclude>net.sourceforge.pmd.util.internal</exclude>
</excludes>
</parameter>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>

View File

@ -16,6 +16,22 @@
<java.version>8</java.version>
</properties>
<build>
<plugins>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<configuration>
<parameter>
<excludes combine.children="append">
<exclude>net.sourceforge.pmd.doc.internal</exclude>
</excludes>
</parameter>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>generate-rule-docs</id>

View File

@ -122,6 +122,26 @@
<suppressionsLocation>pmd-java-checkstyle-suppressions.xml</suppressionsLocation>
</configuration>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<configuration>
<parameter>
<excludes combine.children="append">
<exclude>net.sourceforge.pmd.lang.java.internal</exclude>
<exclude>net.sourceforge.pmd.lang.java.ast.internal</exclude>
<exclude>net.sourceforge.pmd.lang.java.metrics.internal</exclude>
<exclude>net.sourceforge.pmd.lang.java.rule.internal</exclude>
<exclude>net.sourceforge.pmd.lang.java.rule.xpath.internal</exclude>
<exclude>net.sourceforge.pmd.lang.java.symbols.internal</exclude>
<exclude>net.sourceforge.pmd.lang.java.symbols.table.internal</exclude>
<exclude>net.sourceforge.pmd.lang.java.types.internal</exclude>
<exclude>net.sourceforge.pmd.lang.java.types.ast.internal</exclude>
</excludes>
</parameter>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>

View File

@ -63,6 +63,18 @@
</delimiters>
</configuration>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<configuration>
<parameter>
<excludes combine.children="append">
<exclude>net.sourceforge.pmd.lang.kotlin.rule.xpath.internal</exclude>
</excludes>
</parameter>
</configuration>
</plugin>
</plugins>
</build>

View File

@ -76,6 +76,18 @@
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<configuration>
<parameter>
<excludes combine.children="append">
<exclude>net.sourceforge.pmd.lang.modelica.resolver.internal</exclude>
</excludes>
</parameter>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>

View File

@ -79,6 +79,18 @@
<suppressionsLocation>pmd-plsql-checkstyle-suppressions.xml</suppressionsLocation>
</configuration>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<configuration>
<parameter>
<excludes combine.children="append">
<exclude>net.sourceforge.pmd.lang.plsql.ast.internal</exclude>
</excludes>
</parameter>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>

View File

@ -123,6 +123,18 @@
</offlineLinks>
</configuration>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<configuration>
<parameter>
<excludes combine.children="append">
<exclude>net.sourceforge.pmd.lang.scala.internal</exclude>
</excludes>
</parameter>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>

View File

@ -74,6 +74,18 @@
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<configuration>
<parameter>
<excludes combine.children="append">
<exclude>net.sourceforge.pmd.lang.visualforce.rule.security.internal</exclude>
</excludes>
</parameter>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>

View File

@ -33,6 +33,18 @@
<escapeString>\</escapeString>
</configuration>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<configuration>
<parameter>
<excludes combine.children="append">
<exclude>net.sourceforge.pmd.lang.xml.ast.internal</exclude>
</excludes>
</parameter>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>

30
pom.xml
View File

@ -624,6 +624,30 @@
</lifecycleMappingMetadata>
</configuration>
</plugin>
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
<version>0.20.0</version>
<configuration>
<parameter>
<breakBuildBasedOnSemanticVersioning>true</breakBuildBasedOnSemanticVersioning>
<onlyModified>true</onlyModified>
<excludes>
<exclude>@net.sourceforge.pmd.annotation.InternalApi</exclude>
</excludes>
</parameter>
</configuration>
<executions>
<execution>
<id>japicmp</id>
<phase>verify</phase>
<goals>
<goal>cmp</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</pluginManagement>
<plugins>
@ -728,6 +752,11 @@
</execution>
</executions>
</plugin>
<!-- Enable japicmp for all modules by default -->
<plugin>
<groupId>com.github.siom79.japicmp</groupId>
<artifactId>japicmp-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
@ -1183,6 +1212,7 @@
<cpd.skip>true</cpd.skip>
<cyclonedx.skip>true</cyclonedx.skip>
<dokka.skip>true</dokka.skip>
<japicmp.skip>true</japicmp.skip>
</properties>
</profile>