[jdom-interest] Why are version numbers so complicated?
paul at hoplahup.net
Sat Mar 17 06:22:06 PDT 2012
Your approach is almost perfect I think.
The jdom2 artifactId is useful and correct.
The rest is all a matter of ordering right?
isn't maven saying that 2 < 2.1 ?
So the first version of 2 should just be 2?
That would be my guess.
Le 17 mars 2012 à 14:01, Rolf Lear a écrit :
> Hi all
> I am getting (trying to get) things all nicely tidied up, organized, and automated for the JDOM2 releases. But, one thing I have not yet sorted out is the version number(s) for the 'final' JDOM2 release.
> Here are the factors that influence the decision:
> - the www.jdom.org site is the official release site for all things JDOM.
> - The www.jdom.org site is going to need to have both versions (1.x and 2.x) available simultaneously.
> - maven has version number requirements
> - maven has some automated processing for dependency management
> - Technically the Java package is org.jdom2, not org.jdom
> - 'in my head' I have JDOM 1.x and JDOM2
> - there is an established tradition for JDOM 1.x
> - there is already some sort of 'consistency' for JDOM2
> - I anticipate there to be relatively routine releases for JDOM2 as new features are added and existing bugs fixed. I want it to be easy for new versions to be pushed out, and I want to be able to tell people 'just get the latest version' if there is a problem.
> About the maven requirements: maven has a hierarchy of resources. At the top of the hierarchy is a 'group'. We are the 'org.jdom' group. Each group releases 'things', which in maven speak is an 'artifact'. Each artifact has versions. For example, there is the group 'org.jdom', with the artifacts 'jdom', and 'jdom-contrib', and it so happens that there are the jdom versions 1.1.2 and 1.1.3, as well as the jom-contrib version 1.1.3. There is no special 'maven' reason for the version number jdom 1.1.3 to match jdom-contrib 1.1.3.
> I have also recently added the jdom2 artifact id for the last couple of JDOM2 beta releases. The reason I added jdom2 is because maven dependencies can be automated, where maven users can say 'I want to use the latest version of org.jdom artifact 'jdom'. I don't want people who expect to use JDOM 1.x to suddenly start getting JDOM2. But, I also needed to test whether I can do the releases to maven, and to make sure that the releases work. Finally, maven has an ordering for versions. It is logical, and systematic, but it means that, if we want to use use the two artifacts (jdom and jdom2) that I have already created, we need to keep in mind that the first available versions for them are 1.1.4 and 0.0.5 respectively.
> So, thinking ahead to the first full JDOM2 release, should it be:
> JDOM version 2
> JDOM version 2.0.0
> JDOM2 version 1
> JDOM2 version 1.0.0
> JDOM2 version 2
> JDOM2 verison 2.0.0
> Additionally, should I push the JDOM2 release out to the 'jdom' artifact on maven-central, or should I push it to the 'jdom2' artifact? (it affects the options for version numbers).
> Anyway, the point is that I am wholly uncertain as to what the 'right' answer to this is. Does anyone have any suggestions, notice anything I have missed, etc?
> To control your jdom-interest membership:
More information about the jdom-interest