Details
-
New Feature
-
Status: Resolved
-
Major
-
Resolution: Won't Fix
-
None
-
None
-
None
Description
Found https://siom79.github.io/japicmp/MavenPlugin.html today and tested it out. Was wondering what thoughts are for incorporating this into the build. I tested it on 1.6.6-SNAPSHOT by dropping the following into the test pom file:
<profile> <id>semver-compliance</id> <build> <plugins> <plugin> <groupId>com.github.siom79.japicmp</groupId> <artifactId>japicmp-maven-plugin</artifactId> <version>0.7.2</version> <executions> <execution> <id>client compliance</id> <goals> <goal>cmp</goal> </goals> <phase>verify</phase> <configuration> <oldVersion> <dependency> <groupId>org.apache.accumulo</groupId> <artifactId>accumulo-core</artifactId> <version>1.6.5</version> <type>jar</type> </dependency> </oldVersion> <newVersion> <dependency> <groupId>org.apache.accumulo</groupId> <artifactId>accumulo-core</artifactId> <version>${project.version}</version> <type>jar</type> </dependency> </newVersion> <parameter> <includes> <include>org.apache.accumulo.core.client</include> <include>org.apache.accumulo.core.data</include> <include>org.apache.accumulo.core.security</include> </includes> <excludes> <exclude>*crypto*</exclude> <exclude>*impl*</exclude> <exclude>*thrift*</exclude> </excludes> <accessModifier>protected</accessModifier> breakBuildBasedOnSemanticVersioning>true</breakBuildBasedOnSematicVersioning> <onlyModified>true</onlyModified> </parameter> </configuration> </execution> </executions> </plugin> </plugins> </build> </profile>
I tried getting the previous release version number using the build-helper-maven-plugin, but it found the wrong version. If we use this we would also have to include an execution for minicluster and determine whether or not we want to use the reporting feature of the plugin.