Sometimes it is extremely tempting to wave a huge, heavy, spiked cluebat around. Today I've decided to give in to this temptation.
The case in point is the upload today by their maintainer of first
cwidget
and later
aptitude.
The fact that the maintainer blogged about both uploads probably means that he's
pretty happy about it. Unfortunately I, and people in the Debian release team,
were less than amused. Reason is that the uploads set back a complex
transition of apt and related packages
by at least a week. This is a transition we'd already been following and trying
to get into testing for over a month and which was finally as good as ready to go.
So what was so wrong about these uploads and what could (should?) the maintainer have done?
First of all he should have realized that aptitude has become a rather central
package in Debian with strong ties to apt and thus to a lot of other packages.
Second, he should have checked whether his previous uploads had already migrated
to testing and, if not, why not. The excellent testing migration page for
aptitude (which is
linked from its PTS page clearly
shows that it is tied in a transition involving about a 100 packages in total.
The right thing to do in such a case is to contact the release team (preferably at the debian-release mailing list, or at #debian-release). This would undoubtedly have resulted in a request to delay the uploads a few days until the transition had finished.
Unfortunately that did not happen and cwidget was uploaded. Because of an ABI
bump it ended up in NEW. Because of the transition I did a quick request to
Joerg Jaspert to please delay accepting cwidget until the transition was over.
But then a third mistake, and arguably the most serious one of the lot, was made.
aptitude was uploaded for i386, built against the cwidget library which
had not yet been accepted into unstable. Basically that means that an
uninstallable package was uploaded. And of course it meant that at that point
all efforts to finalize the transition for apt went down the drain.
Some alternatives were discussed on how to deal with the new situation, including
a sourcefull upload of the previous version of aptitude, but in the end
it was decided to just accept the delay as one of the more annoying facts of life
and instead ask Joerg to accept cwidget from NEW.
In the end the damage may be a bit less than a week if the buildds cooperate (which they probably won't with cwidget still stuck at the wrong priority) and the RMs decide to force things.
I sincerely hope that this story will make all Debian Developers and Debian Maintainers a bit more aware of the broader context and consequences of uploads.
Oh, as I'm not an RM myself you may wonder what my interest is in this. We've
got this great new feature in Debian Installer that adds support for multiple
CDs during an installation (a feature that was lost with the integration of
base-installer into D-I). However, we can only upload the relevant D-I component
after apt 0.7.9 has reached testing...