Uploaded image for project: 'Accumulo'
  1. Accumulo
  2. ACCUMULO-4307

semver compliance maven plugin

    XMLWordPrintableJSON

    Details

    • Type: New Feature
    • Status: Resolved
    • Priority: Major
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: build
    • Labels:
      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.

        Attachments

        1. ACCUMULO-4307-1.patch
          3 kB
          Dave Marion

          Activity

            People

            • Assignee:
              ctubbsii Christopher Tubbs
              Reporter:
              dlmarion Dave Marion
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: