[ 
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)

Reply via email to