From: Sebastian Luther Date: Thu, 5 Dec 2013 13:36:51 +0000 (+0100) Subject: Don't filter USE for binary packages with IUSE (bug 485920) X-Git-Tag: v2.2.8~19 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=c08e18723f34cb33a025b7cfa999f03cced9a67b;p=portage.git Don't filter USE for binary packages with IUSE (bug 485920) USE may contain values that aren't present in IUSE for any supported EAPI. This for example breaks use dependencies on USE_EXPAND-values. The behavior for binary packages is now in line with what is done for installed packages. Note that this filtering was not active during merge. URL: https://bugs.gentoo.org/485920 --- diff --git a/pym/portage/dbapi/bintree.py b/pym/portage/dbapi/bintree.py index 61ac6b54c..b1f67aeb2 100644 --- a/pym/portage/dbapi/bintree.py +++ b/pym/portage/dbapi/bintree.py @@ -1283,11 +1283,6 @@ class binarytree(object): def _eval_use_flags(self, cpv, metadata): use = frozenset(metadata["USE"].split()) - raw_use = use - iuse = set(f.lstrip("-+") for f in metadata["IUSE"].split()) - use = [f for f in use if f in iuse] - use.sort() - metadata["USE"] = " ".join(use) for k in self._pkgindex_use_evaluated_keys: if k.endswith('DEPEND'): token_class = Atom @@ -1296,7 +1291,7 @@ class binarytree(object): try: deps = metadata[k] - deps = use_reduce(deps, uselist=raw_use, token_class=token_class) + deps = use_reduce(deps, uselist=use, token_class=token_class) deps = paren_enclose(deps) except portage.exception.InvalidDependString as e: writemsg("%s: %s\n" % (k, str(e)),