Dave Marion created ACCUMULO-4307:
-------------------------------------

             Summary: semver compliance
                 Key: ACCUMULO-4307
                 URL: https://issues.apache.org/jira/browse/ACCUMULO-4307
             Project: Accumulo
          Issue Type: New Feature
          Components: build
    Affects Versions: 1.6.6, 1.7.2, 1.8.0, 2.0.0
            Reporter: Dave Marion
            Assignee: Christopher Tubbs


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:

{noformat}
    <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>
{noformat}

 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.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to