I understand that the "warning" is actually treated like an "error" by the plugin in the sense that the plugin exits with a failure state - badly chosen log level in my opinion.
I think the infos are just what the tool found. The idea appears to be that whenever there is a change in public API, the middle version digit is supposed to change. I did personally also find that a bit strong. My feeling was that I only would like to increase the middle version if there were significant compatible improvements and for smallish extensions like the ones we see below, I'd probably have gone for the last digit. However, my gut feeling is that it may be better to stick to the strict rules of the semantic versioning and just consider the version to be something that is basically managed automatically instead of letting "marketing" influence the versioning scheme. So here I'd say that if we had wanted to do a 2.7.1 release, then we should have sticked to changes that do not affect the API in any way. And we didn't just restore a dropped API here, right? There are four new methods added and only one of them (CasCopier one) was actually a restore, wasn't it? Anyway, there are plenty of numbers. We'll hardly run out of them. -- Richard On 24.06.2015, at 14:04, Marshall Schor <[email protected]> wrote: > In this list, I'm guessing the thing that triggered the failure is the > [WARNING], not the [INFO] - does that seem right? > > In that case, this may be an exception, since the [WARNING] change was in > fact a > fix restoring the dropped API. > > I'm kind of on the fence on this one - though it does seem to me that a fix > *restoring* a dropped API might semantically feel more like a 2.7.1 than a > 2.8.0. > > Other opinions? > > -Marshall > > On 6/24/2015 2:49 AM, Richard Eckart de Castilho wrote: >> Hi all, >> >> I changed the configuration of the semantic versioning plugin for uimaj-core >> yesterday. >> According to the plugin, the next version should be 2.8.0 because public API >> has changed: >> >> [INFO] >> --- maven-enforcer-plugin:1.3.1:enforce (enforce-compatibility) @ uimaj-core >> --- >> >> [INFO] Version specified as <2.7.0> >> [INFO] Using >> </home/jenkins/jenkins-slave/maven-repositories/0/org/apache/uima/uimaj-core/2.7.0/uimaj-core-2.7.0.jar> >> as previous JAR >> [INFO] Using >> </home/jenkins/jenkins-slave/workspace/UIMA-SDK/trunk/uimaj-core/target/uima-core.jar> >> as current JAR >> Class org.apache.uima.jcas.JCas >> Added Method getAnnotationIndex, sig >> <T:Lorg/apache/uima/jcas/tcas/Annotation;>(Ljava/lang/Class<TT;>;)Lorg/apache/uima/cas/text/AnnotationIndex<TT;>;, >> desc (Ljava/lang/Class;)Lorg/apache/uima/cas/text/AnnotationIndex;, access >> abstract public >> Added Method getAllIndexedFS, sig >> <T:Lorg/apache/uima/jcas/cas/TOP;>(Ljava/lang/Class<TT;>;)Lorg/apache/uima/cas/FSIterator<TT;>;, >> desc (Ljava/lang/Class;)Lorg/apache/uima/cas/FSIterator;, access abstract >> public >> Added Method getIndex, sig >> <T:Lorg/apache/uima/jcas/cas/TOP;>(Ljava/lang/String;Ljava/lang/Class<TT;>;)Lorg/apache/uima/cas/FSIndex<TT;>;, >> desc (Ljava/lang/String;Ljava/lang/Class;)Lorg/apache/uima/cas/FSIndex;, >> access abstract public >> Class org.apache.uima.util.CasCopier >> Added Method alreadyCopied, desc (Lorg/apache/uima/cas/FeatureStructure;)Z, >> access public >> >> [WARNING] Rule 0: org.semver.enforcer.RequireBackwardCompatibility failed >> with message: >> >> Current codebase is not backward compatible >> (BACKWARD_COMPATIBLE_IMPLEMENTER) with version <2.7.0>. Compatibility type >> has been detected as <BACKWARD_COMPATIBLE_USER> >> >> >> So since we have +1s recently for semantic versioning, how about making it a >> 2.8.0? >> >> >> As a side-note: this broke the build and somebody immediately opened a >> ticket on >> Stackoverflow asking about the broken build. Anyway, I don't regret breaking >> it. >> IMHO one function of a CI system is to take the build load and waiting time >> off >> from the local developer (machines). >> >> http://stackoverflow.com/questions/31016180/failed-to-execute-maven-enforcer-plugin/31019408#31019408 >> >> Cheers, >> >> -- Richard >> >> On 23.06.2015, at 16:30, Marshall Schor <[email protected]> wrote: >> >>> 2.7.1sdk has 33 issues, including a couple relating to some regressions >>> around >>> some CasCopier functionality that was accidentally dropped. >>> >>> I'm thinking of releasing it after cleaning up the 2-3 remaining >>> non-resolved >>> issues. Any other thoughts pro/con? >>> >>> -Marshall >> >
