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

Carter Bullard carter at qosient.com
Wed Jun 30 09:00:02 EDT 2004


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)

Carter


-----Original Message-----
From: eric [mailto:eric at catastrophe.net]
Sent: Wednesday, June 30, 2004 4:10 AM
To: Andrew Pollock
Cc: Carter Bullard; argus-info at lists.andrew.cmu.edu
Subject: Re: [ARGUS] Argus release strategy (and version numbering scheme)
(longish)

On Sat, 2004-06-26 at 06:31:37 +1000, Andrew Pollock proclaimed...

> Daily builds works fine for Debian. Debian releases a stable version once
in
> a blue moon, so as long as I can get a respectable version of argus and
> argus-clients into that stable release, I'm happy...

For this reason, perhaps taking into account the lowest common
denominator would be best. For instance, OpenBSD is released on a
biannual schedule in May and November. The ports of OpenBSD, like
many others, are maintained at a certain level and only the most
critical bug fixes (usually those that cause a security
vulnerability in the underlying operating system) are pushed into
the ports tree as an announced fix. Anything else (like a minor, or
sometimes even a major, feature waits until the next version of the
OS is released and it's respective ports tree.

That said, perhaps it's best to maintain both a HEAD version and a
stable version of argus. With this, Andrew would be able to track
HEAD (or possibly a -current, slightly less bleeding-edge than HEAD)
and make builds nightly if anything diff's. We can call it a duck, a
cow and a horse...no matter to me! But having a version scheme gets
my vote! Even having a CVS tree would be good too, just to watch the
historical changes. I'll even offer to host it :-)

Cheers,

- Eric






More information about the argus mailing list