Complete.Org: Mailing Lists: Archives: freeciv-dev: January 2003:
[Freeciv-Dev] Re: (PR#2479) Change version string of development version
Home

[Freeciv-Dev] Re: (PR#2479) Change version string of development version

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: rf13@xxxxxxxxxxxxxxxxx
Cc: freeciv-dev@xxxxxxxxxxx
Subject: [Freeciv-Dev] Re: (PR#2479) Change version string of development versions
From: "Jason Short via RT" <rt@xxxxxxxxxxxxxx>
Date: Wed, 29 Jan 2003 09:00:46 -0800
Reply-to: rt@xxxxxxxxxxxxxx

Raimar Falke via RT wrote:
> On Tue, Jan 28, 2003 at 11:42:54PM -0800, Jason Short via RT wrote:
> 
>>[rfalke - Tue Dec  3 08:01:57 2002]:
>>
>>
>>>Development version should use a string of the format "CVS <date>"
>>>where <date> is in ISO date like 2002-12-03 instead of the current
>>>"1.14.1-devel". The date should be the build date.
> 
> 
> Another alternative would be to have a file which is committed
> after/with every normal commit. This file contains something like:
> 
> #define MASTER_REVISION="$Id 1.45$"
> 
> and at runtime we build a version string ("1.14.1-45" for example)
> from this.

This *sounds* like a great idea.

But first of all I don't know how/if it is possible.

Secondly, it will require a commit to this file every time any other 
file is committed.  This may be done by a script, but having a script 
that actually makes changes to the code is dangerous.

Thirdly, it won't actually give foolproof results.  If you "cvs up -A" 
or "cvs up -D ..." from the toplevel directory, you're fine.  But if you 
apply a patch or update only part of a repository, your datestamp will 
be misleading.  So the end result is that it will work for the daily 
snapshots, but not too well for any self-compiled CVS versions.

That said, the alternative I proposed doesn't seem that great either; it 
also works just fine for the daily snapshots but even worse for 
everything else.

The goal is to know what code someone is using when they report a bug. 
So perhaps the daily snapshots could have their version manually changed 
to "CVS-2003-1-29".  This way we get the CVS tag on them but not on any 
manually-generated snapshots.  So from normal users we get a good 
datestamp but from those compiling from CVS we get just get "1.14.99" 
and we know they're using CVS directly.

jason




[Prev in Thread] Current Thread [Next in Thread]