From 6a45cf7fa340be3754f12222089f2e57cb560b4a Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 29 Sep 2008 16:58:48 +0000 Subject: Bug #239006 - In FakeVartree._aux_get_wrapper(), fall back to vdb metadata if the live ebuild's EAPI is unsupported. svn path=/main/trunk/; revision=11600 --- pym/_emerge/__init__.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'pym/_emerge') diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index 000f2f6dc..ac168bd1f 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -1102,7 +1102,7 @@ class FakeVartree(portage.vartree): self._match = self.dbapi.match self.dbapi.match = self._match_wrapper self._aux_get_history = set() - self._portdb_keys = ["DEPEND", "RDEPEND", "PDEPEND"] + self._portdb_keys = ["EAPI", "DEPEND", "RDEPEND", "PDEPEND"] self._portdb = portdb self._global_updates = None @@ -1128,6 +1128,8 @@ class FakeVartree(portage.vartree): # Use the live ebuild metadata if possible. live_metadata = dict(izip(self._portdb_keys, self._portdb.aux_get(pkg, self._portdb_keys))) + if not portage.eapi_is_supported(live_metadata["EAPI"]): + raise KeyError(pkg) self.dbapi.aux_update(pkg, live_metadata) except (KeyError, portage.exception.PortageException): if self._global_updates is None: -- cgit v1.2.3-1-g7c22