Alternatives to version numbering

Toby Corkindale tjc at wintrmute.net
Tue Dec 11 02:28:23 GMT 2007


On Mon, Dec 10, 2007 at 12:53:14PM +0000, Leon Brocard wrote:
> On 10/12/2007, Toby Corkindale <tjc at wintrmute.net> wrote:
> 
> > Version numbers are a well-understood way of telling whether a perl module,
> > or indeed entire application, has the features or behaviour you are looking
> > for.  It works well for applications with a central point of release and
> > distribution. You know version 1.2.0 comes after versions 1.1.0-1.1.x.
> 
> All version numbers are hateful. Different things which do different
> things should be called different things, not just have a different
> version number. The only version numbers which make sense are numbers
> which sort sensibly. That means only one dot.

I'm thinking of cases where new features are worked upon by different people
independantly, and then patchsets recombined over time.

If you have several patches, and each one modifies the version, it gets messy.
ie.

---first patch file---
2c2
< $VERSION=1.00;
---
> $VERSION=1.01;
40a41
...add thingy rebodgematic feature
----------------------
---second patch patch-
2c2
< $VERSION=1.00;
---
> $VERSION=1.01;
20a21
...add widget exonerator feature
----------------------

Whereas with some kind of behaviour knowledge, the patches could look more
like:
----------
20a21
> push(@FEATURES, { WIDGET_EXONERATOR => 1 });
...add widget exonerator feature
---------


I suspect the problem here is that I have some software in mind, which is
developed in a particular way, and that neither is ideal.

tjc


More information about the london.pm mailing list