Automatically remove obsolete source packages from testing.

An "obsolete source" is one which produces no binaries.  This situation
generally arises when all of the binaries which used to be produced by
the source package are now built by other sources.

Sooner or later such sources will probably be auto-crufted from unstable,
but there's no real reason to keep them in testing in the meantime.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
bzr-import-20160707
Adam D. Barratt 13 years ago
parent 6f705b9585
commit 42df75af7b

@ -2408,6 +2408,17 @@ class Britney:
if not self.options.compatible or self.options.autohinter:
self.auto_hinter()
# obsolete source packages
if not self.options.compatible:
self.__log("> Removing obsolete source packages from testing", type="I")
removals = []
sources = self.sources['testing']
removals = [ HintItem("-%s/%s" % (source, sources[source][VERSION])) for \
source in sources if len(sources[source][BINARIES]) == 0 ]
if len(removals) > 0:
self.output_write("Removing obsolete source packages from testing (%d):\n" % (len(removals)))
self.do_all(actions=removals)
# smooth updates
if not self.options.compatible and len(self.options.smooth_updates) > 0:
self.__log("> Removing old packages left in testing from smooth updates", type="I")

Loading…
Cancel
Save