[ARGUS] Argus release strategy (and version numbering scheme) (longish)

Andrew Pollock andrew-argus at andrew.net.au
Wed Jun 30 17:32:30 EDT 2004


On Wed, Jun 30, 2004 at 09:00:02AM -0400, Carter Bullard wrote:
> Well, we're on a loose bi-annual release strategy for Argus.
> I like that and will try to stick with it, so we're on a May
> November release cycle right now.
> 
> We still don't have any suggestions on version numbering,
> which I believe is Andrew's primary problem.  Our current
> strategy is:
> 
>    argus-x.y.z.alpha.x   development versions
>    argus-x.y.z.beta.z    test versions
>    argus-x.y.z.rc.x      release candidates
>    argus-x.y.z           stable release
> 
> Andrews primary problem is that he builds the test and
> release versions and includes them in Debian, and
> then when the release comes out, the release number looks
> like its "less than".  So, what to do?
> 
> I'm in favor of a discipline like this:
> 
>    argus-major.minor.version[.stage.#]
> 
>    Major release incremented with significant data format changes
>       that introduce data incompatibility with earlier versions.
> 
>    Minor release incremented with significant feature changes that
>       distinguish this release from the prior release (the major and
>       minor numbers are advertised in the starting management record
>       so clients that read the data can make a parsing decision based
>       on the two numbers).
> 
>    Version number changes with every release.
> 
>    Stage is optional with values:
>         stable release: '', fixes
>       unstable release: alpha, beta, rc
> 
>    Stable release    - vers is always even.
>    Unstable release  - vers is always odd.
> 
> A whole release cycle would then look like this:
> 
>    argus-x.y.z.alpha.w
>    argus-x.y.z.beta.n
>    argus-x.y.z.rc.r
>    argus-x.y.z+1
>    argus-x.y.z+1.fixes.y
> 
> where z is always odd.
> 
> With this suggestion we can renumber argus-2.0.6 to argus-2.0.8,
> or leave it the same, depending on whether Andrew needs a version
> renumber to solve his problem.
> 
> Need opinions here, or its not going to change ;o)

Hi,

This sounds pretty reasonable to me. If you want to re-release 2.0.6 as
2.0.8, that's fine. It means I can avoid this epoch thing in the version
number, which is a permanent thing.

Quick test:

$ dpkg --compare-versions 2.0.6.alpha.1 lt 2.0.6.beta.1 && echo smaller || echo bigger smaller
smaller
$ dpkg --compare-versions 2.0.6.beta.1 lt 2.0.6.rc.1 && echo smaller || echo
bigger
smaller
$ dpkg --compare-versions 2.0.6.rc.1 lt 2.0.7 && echo smaller || echo bigger
smaller
$ dpkg --compare-versions 2.0.7 lt 2.0.7.fixes.1 && echo smaller || echo
bigger
smaller

so this stands up from a "newer versions compare higher" standpoint.

Thanks for considering this.

regards

Andrew



More information about the argus mailing list