From: Sebastian Luther <sebastianlut...@gmx.de> xmatch returns _pkg_str instances these days. They require metadata access, which cp_list doesn't have. That means that writing cp_list results into the xmatch cache breaks xmatch users that expect _pkg_str instances with full metadata. --- pym/portage/dbapi/porttree.py | 7 ------- 1 file changed, 7 deletions(-)
diff --git a/pym/portage/dbapi/porttree.py b/pym/portage/dbapi/porttree.py index fc3fc03..62ac75c 100644 --- a/pym/portage/dbapi/porttree.py +++ b/pym/portage/dbapi/porttree.py @@ -740,12 +740,6 @@ class portdbapi(dbapi): if self.frozen and mytree is None: cachelist = self.xcache["cp-list"].get(mycp) - if cachelist is not None: - # Try to propagate this to the match-all cache here for - # repoman since he uses separate match-all caches for each - # profile (due to differences in _get_implicit_iuse). - self.xcache["match-all"][(mycp, mycp)] = cachelist - return cachelist[:] mysplit = mycp.split("/") invalid_category = mysplit[0] not in self._categories d={} @@ -796,7 +790,6 @@ class portdbapi(dbapi): if self.frozen and mytree is None: cachelist = mylist[:] self.xcache["cp-list"][mycp] = cachelist - self.xcache["match-all"][(mycp, mycp)] = cachelist return mylist def freeze(self): -- 1.8.3.2