Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Andrew Cagney <ac131313@cygnus.com>
To: gdb-patches@sources.redhat.com
Subject: ["patch"/doc] GDB version and branch names
Date: Wed, 06 Mar 2002 18:11:00 -0000	[thread overview]
Message-ID: <3C86CC4E.6050801@cygnus.com> (raw)

Hello, below is an attemt at documenting the GDB branch and version 
policies.  Comments wanted.  If you think the rationale for something is 
unclear, please point it out.

enjoy,
Andrew

@section Version and branch names

@subsection Versions

@value{GDBN}'s version is determined by the file @file{gdb/version.in}.
@value{GDBN} never uses letters in its version identifier, letters being
reserved for vendor customised @value{GDBN} releases.  Conversely, a
vendor customised @value{GDBN} release is expected to modify the version
identifier so that it includes letters (and digits).

@value{GDBN}'s mainline uses only dates to differentiate between
versions.  The CVS repository uses @file{YYYY-MM-DD-cvs} while
corresponding snapshots use @file{YYYYMMDD}.

To avoid confusion between the main-line, @value{GDBN}'s release branches
use a more complex version naming scheme.  The schema assumes that a
series of releases, starting with a major.minor and possibly followed by a
number of major.minor.minor releases are all to be drawn from a single
branch.

When a release branch is first cut, the version identifier is updated to
include a prefix constructed from the previous release serieuses
major.minor (@file{m.n}) identification with a @file{.90} suffix
appended.  Consequently, CVS versions are identified with
@file{m.n.90-YYYY-MM-DD-cvs} and snapshots are identified with
@file{m.n.90_YYYYMMDD}.  As draft releases are drawn from the branch,
the minor minor number (@file{.90}) is incremented.

Once an official release (@file{M.N}) has been made, the version
identifier is updated to contain @file{M.N.0.90} (dot zero, dot ninety)
as the prefix.  Consequently, @file{M.N.0.90-YYYY-MM-DD-cvs} identifies
CVS versions while @file{M.N.0.90_YYYYMMDD} identifies a snapshot.
Succeeding releases increment the minor minor number (@file{.0} or dot
zero).  Succeeding draft release candidates increment the minor minor
minor number (@file{.90}). Since @value{GDBN} no longer makes minor
minor minor releases (e@.g@. @file{5.1.0.1}), there is no potential
version number conflict.

The following a example illustrates this sequence using @file{5.1} as
the previous (@file{m.n}) release series and @file{5.2} @file{M.N} as
the current release series.

@example
5.1.90-YYYY-MM-DD-cvs
5.1.91 (draft release candidate)
5.1.91-YYYY-MM-DD-cvs
5.1.92 (draft release candidate)
5.1.92-YYYY-MM-DD-cvs
5.1.93 (a lie, really 5.2)
5.2 (release)
5.2.0.90-YYYY-MM-DD-cvs
5.2.1 (release)
5.2.1.90-YYYY-MM-DD-cvs
@end example

@itemize @bullet
@item
Minor minor minor draft release candidates such as @file{5.2.0.91) were
intentionally omitted from the example, such release candidates will
most likely never be made.
@item
@file{5.1.93} is described as @emph{a lie} since the bziped tar ball
@file{gdb-5.1.93.tar.bz2} is just the @file{gdb-5.2.tar} file renamed an
compressed.
@end itemize

@subsection Branches

Releases 5.0 and 5.2 used branch tags of the form:

@example
gdb_N_M-YYYY-MM-DD-branchpoint
gdb_N_M-YYYY-MM-DD-branch
gdb_M_N-YYYY-MM-DD-release
@end example

Release 5.2 is trying out:

@example
gdb_N_M-YYYY-MM-DD-branchpoint
gdb_N_M-branch
gdb_M_N-YYYY-MM-DD-release
@end example

@emph{Pragmatics: The branchpoint and release tags need to identify when
a branch and release are made.  The branch tag, denoting the head of the
branch, does not have this criteria.}


             reply	other threads:[~2002-03-07  2:11 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-03-06 18:11 Andrew Cagney [this message]
2002-03-07 12:04 ` Eli Zaretskii
2002-03-07 12:11   ` Andrew Cagney
2002-03-07 23:44     ` Eli Zaretskii
2002-03-08  6:52       ` Andrew Cagney

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3C86CC4E.6050801@cygnus.com \
    --to=ac131313@cygnus.com \
    --cc=gdb-patches@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox