gnu-arch-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnu-arch-users] What are version numbers?


From: Zack Brown
Subject: Re: [Gnu-arch-users] What are version numbers?
Date: Wed, 10 Sep 2003 14:45:41 -0700
User-agent: Mutt/1.5.4i

On Wed, Sep 10, 2003 at 01:35:12PM -0700, Tom Lord wrote:
> 
>     > From: Zack Brown <address@hidden>
> 
>     > I think I have a workable understanding of archives, categories, and
>     > branches, but version numbers are still confusing me. Maybe someone can
>     > explain.
> 
> You can think of the structure of the namespace this way:
> 
>       category --
>               Just a general, overarching name for the project
>                 in question -- a name that makes sense for all 
>                 forks, branches, versions, etc.
> 
>       branch --
>               An _unordered division of the project into sets of
>               development lines.
> 
>       version --
>                 A lexically, numerically _ordered_ division of the
>                 project into sets of development lines.
> 
> When I made up the namespace, I looked at many projects and how they
> named and numbered things, and all of them mapped into this namespace 
> reasonably well.
> 
> It may be helpful not to think of a category as being divided first
> into branches, then into versions, but instead as a category as being
> the name of a two dimensional space:  BRANCH x VERSION

That starts to make sense to me...

> 
> It can be interesting to look at slices of that space defined by
> holding BRANCH constant and slices defined by holding VERSION
> constant.  (And when you have that down, we can throw in the ARCHIVE
> component of the namespace and call it a three dimensional space.)
> 
> It's just a convention - one of two possible - that branch labels are
> written to the left of version ids.

That seems like a key point; it would be nice to see that in the
tutorial. (I'm working up to contributing, but it's sort of a chicken
and egg problem... ;-)

> 
> 
>     > I'm guessing that the tla version number is essentially chosen for
>     > organizational reasons during development. So just as a developer might
>     > start a new branch in order to work on a particular new feature, 
> 
> Usually, that would be a reason for a new branch label, not a new
> version.   Features aren't ordered (though separately released sets of
> features may be).
> 
> 
>     > there are similar reasons for selecting a version number. But
>     > what those reasons might be, or how it would fit into the
>     > organization of a project, I don't know.
> 
> Why do GCC releases and development lines have version numbers?  Or
> Mozilla, or the linux kernel, or bash, or tla, or (etc.)?   It
> reflects how software is developed and deployed.
...
> I have two concurrent release
> tracks for tla:  the 1.0 series and the 1.1 series.   This is very
> similar to the use of version numbers in GCC or linux kernel and many,
> many, many, many, many other projects besides.

I'm not trying to be critical; just to try to map the feature onto the
ways it might be used in a project. I think my confusion stems from the
fact that there is no *inherent* connection between tla version numbers
and project version numbers.

>     > So in that case, does it make sense to consider 'devo--1.0' the real
>     > branch name, and the version number just a part of that name?
> 
>     > I'm just making stabs. Maybe someone could really explain it.
> 
> 
> The version ids correspond to relesases or, equivalently, development
> paths.  Releases called tla-1.0preX.tar.gz or tla-1.0.X.tar.gz use
> tla--devo--1.0.  Releases called tla-1.1preX.tar.gz or (eventually)
> tla-1.1.X.tar.gz use tla--devo--1.1.
> 
> I'm not to clear why you would find this mysterious.

It's starting to make sense now. It seems like you really do intend
there to be a clear relationship between the project version number, and
the tla version number. It's just that the tla version number refers to
a whole sweep of project version numbers. So tla version 1.0 would
contain project versions 1.0.1, 1.0.2, etc.

Have I gotten it?

Be well,
Zack

> 
> -t
> 

-- 
Zack Brown




reply via email to

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