From faa536f437c445c3d2eb06c791b1492101474cc9 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Tue, 24 May 2011 20:57:33 -0700 Subject: [PATCH] FakeVartree: preserve EAPI of installed package If the corresponding unbuilt ebuild has a different EAPI than the installed instance, then we want to preserve the EAPI meatadata from the installed instance. --- pym/_emerge/FakeVartree.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pym/_emerge/FakeVartree.py b/pym/_emerge/FakeVartree.py index 3e8113078..51683ca5b 100644 --- a/pym/_emerge/FakeVartree.py +++ b/pym/_emerge/FakeVartree.py @@ -92,7 +92,8 @@ class FakeVartree(vartree): repo = _gen_valid_repo(repo) live_metadata = dict(zip(self._portdb_keys, self._portdb.aux_get(pkg, self._portdb_keys, myrepo=repo))) - if not portage.eapi_is_supported(live_metadata["EAPI"]): + if not portage.eapi_is_supported(live_metadata["EAPI"]) or \ + self._aux_get(pkg, ["EAPI"])[0] != live_metadata["EAPI"]: raise KeyError(pkg) self.dbapi.aux_update(pkg, live_metadata) except (KeyError, portage.exception.PortageException): -- 2.26.2