Author: rec Date: Thu May 28 19:44:55 2015 New Revision: 1682316 URL: http://svn.apache.org/r1682316 Log: [UIMA-4436] Check backwards compatibility during build - Added profile for binary compatibility checks and activated it for uimaj-core via a marker file
Added: uima/uimaj/trunk/uimaj-core/.activate-enforce-compatibility Modified: uima/uimaj/trunk/uimaj-parent/pom.xml Added: uima/uimaj/trunk/uimaj-core/.activate-enforce-compatibility URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-core/.activate-enforce-compatibility?rev=1682316&view=auto ============================================================================== --- uima/uimaj/trunk/uimaj-core/.activate-enforce-compatibility (added) +++ uima/uimaj/trunk/uimaj-core/.activate-enforce-compatibility Thu May 28 19:44:55 2015 @@ -0,0 +1 @@ +Marker file to enable the "enforce-compatibility" profile. Modified: uima/uimaj/trunk/uimaj-parent/pom.xml URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-parent/pom.xml?rev=1682316&r1=1682315&r2=1682316&view=diff ============================================================================== --- uima/uimaj/trunk/uimaj-parent/pom.xml (original) +++ uima/uimaj/trunk/uimaj-parent/pom.xml Thu May 28 19:44:55 2015 @@ -139,6 +139,13 @@ <properties> <uimaScmRoot>uimaj</uimaScmRoot> <uimaScmProject>${project.artifactId}</uimaScmProject> + <!-- + BACKWARD_COMPATIBLE_IMPLEMENTER - patch version (=.=.+) + BACKWARD_COMPATIBLE_USER - minor version (=.+.0) + NON_BACKWARD_COMPATIBLE - major version (+.0.0) + --> + <compat.level>BACKWARD_COMPATIBLE_USER</compat.level> + <compat.previous.version>2.7.0</compat.previous.version> </properties> <build> @@ -194,4 +201,52 @@ </plugin> </plugins> </build> + <profiles> + <profile> + <id>enforce-compatibility</id> + <activation> + <file> + <exists>.activate-enforce-compatibility</exists> + </file> + </activation> + <build> + <pluginManagement> + <plugins> + <plugin> + <artifactId>maven-enforcer-plugin</artifactId> + <dependencies> + <dependency> + <groupId>org.semver</groupId> + <artifactId>enforcer-rule</artifactId> + <version>0.9.33</version> + </dependency> + </dependencies> + <executions> + <execution> + <id>enforce-compatibility</id> + <phase>verify</phase> + <goals> + <goal>enforce</goal> + </goals> + <configuration> + <rules> + <requireBackwardCompatibility implementation="org.semver.enforcer.RequireBackwardCompatibility"> + <previousVersion>${compat.previous.version}</previousVersion> + <dumpDetails>true</dumpDetails> + <compatibilityType>${compat.level}</compatibilityType> + <excludes> + <exclude>**/impl/**/*</exclude> + <exclude>**/internal/**/*</exclude> + </excludes> + </requireBackwardCompatibility> + </rules> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </pluginManagement> + </build> + </profile> + </profiles> </project>