mirror of
https://git.launchpad.net/~ubuntu-release/britney/+git/britney2-ubuntu
synced 2025-02-13 15:37:02 +00:00
britney.py: Avoid some O(n) look-ups in the auto-hinter
Signed-off-by: Niels Thykier <niels@thykier.net>
This commit is contained in:
parent
cc58511c09
commit
ffcfa8e27e
@ -2805,7 +2805,9 @@ class Britney(object):
|
||||
type="I")
|
||||
|
||||
# consider only excuses which are valid candidates
|
||||
excuses = dict((x.name, x) for x in self.excuses if x.name in [y.uvname for y in self.upgrade_me])
|
||||
valid_excuses = frozenset(y.uvname for y in self.upgrade_me)
|
||||
excuses = dict((x.name, x) for x in self.excuses if x.name in valid_excuses)
|
||||
excuses_deps = dict((name, set(excuse.deps)) for name, excuse in excuses.items())
|
||||
sources_t = self.sources['testing']
|
||||
|
||||
groups = set()
|
||||
@ -2871,7 +2873,7 @@ class Britney(object):
|
||||
for item, ver in items:
|
||||
# excuses which depend on "item" or are depended on by it
|
||||
new_items = [(x, excuses[x].ver[1]) for x in excuses if \
|
||||
(item in excuses[x].deps or x in excuses[item].deps) \
|
||||
(item in excuses_deps[x] or x in excuses_deps[item]) \
|
||||
and (x, excuses[x].ver[1]) not in seen_items]
|
||||
items.extend(new_items)
|
||||
seen_items.update(new_items)
|
||||
|
Loading…
x
Reference in New Issue
Block a user