On Wed, Jul 9, 2008 at 8:09 AM, Johan Vromans <[EMAIL PROTECTED]> wrote:
> The CPAN indexer requires perl modules (and sub-modules) to have a
> non-descending VERSION number. RCS/CVS $Revision$ has been invaluable
> for that.

Not really.  If you use RCS/CVS numbers, then you have several problems:

1. Various files in the distribution have different version numbers,
so it's harder to be sure a user has the right version of each one

2. Commits made during the course of development get version numbers
that do not correspond to a release, so it looks like you have missing
releases

3. Major vs minor releases should increment different parts of the
version number, and doing that at commit time doesn't match the
reality of the release process.

Because of these issues I feel it's best to just update the version
numbers when a release is made.  You might as well do this by hand,
since you need to update the README, CHANGES, etc. files at the same
time.

> Now more and more development is migrating towards VCS that do not
> have such a feature (git, svn, hg, ...).

Probably a good thing, since it forces people to move away from
arbitrary and meaningless release numbers.

> What are the alternatives?
>
> Manually updating the version numbers of changed modules before a
> release does not sound appealing to me.

I know we like things to be automated, but for reasons I mention
above, I think this is really the best way anyway.

> I ususally get the advice to build a hook script, etc., but I think
> this 'problem' should be dealt with at a non-individual level.

If it's going to be automated it would still require the person doing
the release to make a choice about the version number, update the
CHANGES and README, etc.

Reply via email to