Re: changelog practice, unfinalised vs UNRELEASED vs ~version
- Date: Mon, 20 Feb 2017 20:05:02 +0000
- From: Ian Jackson <ijackson@xxxxxxxxxxxxxxxxxxxxxx>
- Subject: Re: changelog practice, unfinalised vs UNRELEASED vs ~version
Guido Günther writes ("Re: changelog practice, unfinalised vs UNRELEASED vs ~version"):
> On Sun, Feb 12, 2017 at 12:48:35PM +0000, Ian Jackson wrote:
> > We do not seem to have a coherent approach to how to handle
> > debian/changelog in trees (eg, vcs branches) which are not yet ready
> > for upload.
> > See below two examples of things done differently.
> > The questions are:
> > Q1. Should the suite in the changelog entry be UNRELEASED,
> > or the suite at which the vcs branch is targeted ?
> DEP14 allows for branching schemes that have the desired suite included
> like debian/sid, debian/experimental, debian/stretch so the information
> is included in the VCS and UNRELEASED only indicates the "not finished
> yet" part.
I think the asnwer to this is the same as that I gave to Wookey who
mentioned a workflow involving vcs tags.
I think we should agree, as a project on some conventions about
what debian/changelog would mean if you find it in some vcs branch
(or, for that matter, a tarball or whatever someone sends you). I
definitely don't think vcs tags are the right answer. They are not
always transported with the revision and vcs-unaware tools cannot
see them at all.
This is (almost) as true for branches as it is for tags.
> > Q3. Should the version number be the intended next version number,
> > or should it be decorated with ~something ? If it should
> > be decorated, what should it be decorated with ?
> gbp dch adds a ~<N>.gbp<M> by default. N being the snapshot number (the
> nth time you ran dbp dch since the last release) and <M> being the first
> digits of the sha1. This allows for
> * easy identification of snapshot builds
> * increasing version numbers useful for e.g. CI builds.
> * a version number that is smaller than the final release number
> so systems having snapshot builds can be easily upgraded to
> release versions
> * a mapping back to the git commit until when the changelog was
This is all fine. What it lacks is a way to stop you accidentally
uploading an unfinished ~gbp snapshot, based on the version number.
I was proposing ~UNRELEASED. Obviously that could be
~UNRELEASED<N>.<M> (with N and M from your notation).