[ https://issues.apache.org/jira/browse/MNG-6064?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15380206#comment-15380206 ]
Karl Heinz Marbaise commented on MNG-6064: ------------------------------------------ Ok let us think about that: The results you have defined as what you expected: {code} 1.0.1 > 1.0.1-dev.2+5612df0 1.0.1 > 1.0.1-beta {code} What is the result of: {code} 1.0.1-dev.2+5612df0 ? 1.0.1-beta {code} Who should be the newer/older version ? If a version is under development this means it is a {{SNAPSHOT}} in Maven conventions...From Maven perspective all versions you've mentioned are releases. Furthermore the versions you have mentioned {{1.0.1-dev.1.uncommit+5612df0}} and {{1.0.1-dev.2.uncommit+3e7u598}} so comparing those versions: {code} ~$ java -jar /usr/share/java/apache-maven-3.3.9/lib/maven-artifact-3.3.9.jar 1.0.1-dev.1.uncommit+5612df0 1.0.1-dev.2.uncommit+3e7u598 Display parameters as parsed by Maven (in canonical form) and comparison result: 1. 1.0.1-dev.1.uncommit+5612df0 == 1.0.1-dev.1.uncommit+-5612-df 1.0.1-dev.1.uncommit+5612df0 < 1.0.1-dev.2.uncommit+3e7u598 2. 1.0.1-dev.2.uncommit+3e7u598 == 1.0.1-dev.2.uncommit+-3-e-7-u-598 {code} Apart from that what I don't understand you are referencing gradle plugins and would like to change Maven? Furthermore what I don't understand is your scenario with the database and the Comparable Version class? Are you using it directly ? or via Maven ? > Add "dev" string item into ComparableVersion > -------------------------------------------- > > Key: MNG-6064 > URL: https://issues.apache.org/jira/browse/MNG-6064 > Project: Maven > Issue Type: New Feature > Components: Artifacts and Repositories > Affects Versions: 3.3.9 > Environment: Any operating Systems > Reporter: Hui Wang > Priority: Minor > Labels: maven > Original Estimate: 0.5h > Remaining Estimate: 0.5h > > We're using a popular Gradle plugin "gradle-git" ( from Andrew Oberstar ) to > implement Semantic Versioning with Continuous Deployment. There's a strategy > supported by gradle-git that defines a "dev" stage when we have something > uncommitted on a developer branch, which is very useful. Some examples to > demonstrate the "dev" scenario can be found here: > https://github.com/ajoberstar/gradle-git/wiki/Release%20Plugins#how-do-i-use-the-opinion-plugin > However, current version of > org.apache.maven.artifact.versioning.ComparableVersion does not support "dev" > stage since there's no item "dev" in the field _QUALIFIERS of nested class > StringItem. And since this is a private static final field, it is not able to > be overwritten by inheritance. Can we add the "dev" item into _QUALIFIERS ? -- This message was sent by Atlassian JIRA (v6.3.4#6332)