RFC: transitioning towards using BTS versioning for NMUs (and experimental)
I was asked to take this on -devel to facilitate easier commenting; those of
you who read Planet Debian will probably already have read most of this on my
blog, but some of it is new and some of it is condensed.
Currently we use the tag "fixed" for "bugs fixed in NMU", and
"fixed-in-experimental" for, well, "bugs fixed in experimental". Now that we
have proper versioning support in the BTS (effectively all but deprecating
the "open/closed" status in itself), we no longer need these tags, and
can replace them with proper versioning support. This makes it easier to spot
what will need hinting to be pushed into testing, especially as we start
freezing and britney no longer does this automatically.
Just a quick note first: Dropping the fixed tag will _not_ make it easier to
"forget" bugs that were fixed in an NMU which was never included by the
maintainer -- the versioning code in the BTS is intelligent enough to
understand (via parsing the changelog) that the NMU was not included, and that
it is not fixed in the given version. IMO we should make separate bugs for
NMU diffs the standard, though, as closing the bugs instead of just tagging
them will probably make them go away after a while, so we'd need some other
way of tracking this. (There are lots of details here that need to be worked
out, but I'm sure we can agree on reasonable practices here.)
Anyhow, what I propose to do from here is something along the lines of
(straight from my blog):
1. Make the default BTS view versioned; currently is uses only the
open/closed status, but you can choose to view a specific suite
("unstable") or version ("1.0-1"), but I believe the default view should
be a simple union of what's open in stable, testing and unstable. (There
are two problems here: There might be too many bugs affecting stable only,
causing clutter, and bugs might go away too quickly after they're fixed in
unstable. One could probably make adjustments here, but remember that most
new bugs will be filed against a version later than what's in stable, so
they'll go away when the version has progressed into testing, which I
believe makes for an okay-ish scope for most uses.)
[Don Armstrong had a different suggestion here: Make the default view show
anything applicable to unstable, _plus_ anything that is not marked as
fixed in any version. I don't believe the difference is all that big.]
2. Make the official RC bug graph use the versioning information; I believe
the most useful statistic here is "number of bugs present in both etch and
sid", at least before we freeze, as the rest is mainly RM food anyhow,
which most of us can't really do much about except wait.
3. Make katie (oops, "dak") start sending out versioned closes instead of
tagging stuff fixed and fixed-in-experimental. There's already a bug open
(with a patch) to do this in the BTS, but I don't know what the current
status is.
[Don suggested to use the tags _and_ the versioning information in a
transitional period; I'm not 100% sure what this buys us, except that I'm
not sure how well britney would cope without.]
4. Run a script over the archive (like the one I made a while ago -- sources
available for anyone who needs it :-) ) to remove all the instance of
these two tags, and replace them by versioned closes.
5. ???
6. Release etch!
[I'm sure the RMs would want to have their say at this point. :-P]
Comments are, of course, very much welcome. Flames are, of course, not. :-)
/* Steinar */
--
Homepage: http://www.sesse.net/
Reply to: