From 5f3a747a78482abf338068aeff6545d7ce591e3a Mon Sep 17 00:00:00 2001 From: "Adam D. Barratt" Date: Sun, 28 Feb 2010 14:44:37 +0000 Subject: [PATCH] Override unblock{,-udeb} hints based on the versions they apply to Signed-off-by: Adam D. Barratt Based on patches to britney by Philipp Kern --- britney.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/britney.py b/britney.py index 77021b1..d94a173 100755 --- a/britney.py +++ b/britney.py @@ -781,7 +781,16 @@ class Britney: z = {} for a, b in hints[x]: if z.has_key(a) and z[a] != b: - self.__log("Overriding %s[%s] = %s with %s" % (x, a, z[a], b), type="W") + if x in ['unblock', 'unblock-udeb']: + if apt_pkg.VersionCompare(z[a][0], b[0]) < 0: + # This hint is for a newer version, so discard the old one + self.__log("Overriding %s[%s] = %s with %s" % (x, a, z[a], b), type="W") + else: + # This hint is for an older version, so ignore the new one + self.__log("Ignoring %s[%s] = %s, %s is higher or equal" % (x, a, b, z[a]), type="W") + continue + else: + self.__log("Overriding %s[%s] = %s with %s" % (x, a, z[a], b), type="W") z[a] = b hints[x] = z