From ee9f28be9ac507d8df1d991e2c6a317e6a4a749e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eray=20=C3=96zkural?= Date: Mon, 12 Dec 2005 13:31:31 +0000 Subject: [PATCH] * fix: search: intersection of individual result sets, not union * fix: build: check build dependency version, fail if cannot be satisfied --- pisi/build.py | 6 +++++- pisi/search/invertedindex.py | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/pisi/build.py b/pisi/build.py index 6c2cda1d..c5b81130 100644 --- a/pisi/build.py +++ b/pisi/build.py @@ -378,9 +378,13 @@ class Builder: dep_unsatis.append(dep) if dep_unsatis: - ctx.ui.info(_("Unsatisfied Build Dependencies:")) + ctx.ui.info(_("Unsatisfied Build Dependencies:") + ' ' + + util.strlist([str(x) for x in dep_unsatis]) ) for dep in dep_unsatis: + if not dependency.repo_satisfies_dep(dep): + raise Error(_('Build dependency %s cannot be satisfied') % str(dep)) ctx.ui.warning(str(dep)) + if not ctx.config.get_option('ignore_dependency'): if ctx.ui.confirm( _('Do you want to install the unsatisfied build dependencies')): diff --git a/pisi/search/invertedindex.py b/pisi/search/invertedindex.py index ef79bab3..62a0275e 100644 --- a/pisi/search/invertedindex.py +++ b/pisi/search/invertedindex.py @@ -39,7 +39,7 @@ class InvertedIndex(object): def query(self, terms, txn = None): def proc(txn): docs = [ self.get_term(x, txn) for x in terms ] - return reduce(lambda x,y: x.union(y), docs) + return reduce(lambda x,y: x.intersection(y), docs) return self.d.txn_proc(proc, txn) def list_terms(self, txn= None):