From: "Zac Medico" <zmedico@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/portage:master commit in: pym/portage/dbapi/, pym/_emerge/
Date: Sat, 15 Oct 2011 05:10:42 +0000 (UTC) [thread overview]
Message-ID: <4580734caa18250bd0c2bc8241dc36f308cdef2b.zmedico@gentoo> (raw)
commit: 4580734caa18250bd0c2bc8241dc36f308cdef2b
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Sat Oct 15 05:10:28 2011 +0000
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Sat Oct 15 05:10:28 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=4580734c
emerge --metadata: fix breakage
The hunk that got removed from action_metadata in commit
d4ea29bf6a3ce35d49e0f54f9173e3a6e42da2d6 is actually needed when
FEATURES=metadata-transfer is enabled.
---
pym/_emerge/actions.py | 4 ++++
pym/portage/dbapi/porttree.py | 20 ++++++++++++++------
2 files changed, 18 insertions(+), 6 deletions(-)
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py
index c449b58..71a0902 100644
--- a/pym/_emerge/actions.py
+++ b/pym/_emerge/actions.py
@@ -1660,6 +1660,10 @@ def action_metadata(settings, portdb, myopts, porttrees=None):
porttrees_data = []
for path in porttrees:
src_db = portdb._pregen_auxdb.get(path)
+ if src_db is None:
+ # portdbapi does not populate _pregen_auxdb
+ # when FEATURES=metadata-transfer is enabled
+ src_db = portdb._create_pregen_cache(path)
if src_db is not None:
porttrees_data.append(TreeData(portdb.auxdb[path],
diff --git a/pym/portage/dbapi/porttree.py b/pym/portage/dbapi/porttree.py
index bffae36..36b326c 100644
--- a/pym/portage/dbapi/porttree.py
+++ b/pym/portage/dbapi/porttree.py
@@ -182,6 +182,8 @@ class portdbapi(dbapi):
# ~harring
filtered_auxdbkeys = [x for x in auxdbkeys if not x.startswith("UNUSED_0")]
filtered_auxdbkeys.sort()
+ filtered_auxdbkeys = tuple(filtered_auxdbkeys)
+ self._filtered_auxdbkeys = filtered_auxdbkeys
# If secpass < 1, we don't want to write to the cache
# since then we won't be able to apply group permissions
# to the cache entries/directories.
@@ -212,14 +214,9 @@ class portdbapi(dbapi):
for x in self.porttrees:
if x in self._pregen_auxdb:
continue
- conf = self.repositories.get_repo_for_location(x)
- cache = conf.get_pregenerated_cache(filtered_auxdbkeys, readonly=True)
+ cache = self._create_pregen_cache(x)
if cache is not None:
self._pregen_auxdb[x] = cache
- try:
- cache.ec = self._repo_info[x].eclass_db
- except AttributeError:
- pass
# Selectively cache metadata in order to optimize dep matching.
self._aux_cache_keys = set(
["DEPEND", "EAPI", "INHERITED", "IUSE", "KEYWORDS", "LICENSE",
@@ -229,6 +226,17 @@ class portdbapi(dbapi):
self._aux_cache = {}
self._broken_ebuilds = set()
+ def _create_pregen_cache(self, tree):
+ conf = self.repositories.get_repo_for_location(tree)
+ cache = conf.get_pregenerated_cache(
+ self._filtered_auxdbkeys, readonly=True)
+ if cache is not None:
+ try:
+ cache.ec = self._repo_info[tree].eclass_db
+ except AttributeError:
+ pass
+ return cache
+
def _init_cache_dirs(self):
"""Create /var/cache/edb/dep and adjust permissions for the portage
group."""
next reply other threads:[~2011-10-15 5:11 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-15 5:10 Zac Medico [this message]
-- strict thread matches above, loose matches on Subject: below --
2017-04-03 20:03 [gentoo-commits] proj/portage:master commit in: pym/portage/dbapi/, pym/_emerge/ Zac Medico
2015-08-30 23:44 Zac Medico
2014-11-20 4:08 Zac Medico
2014-02-24 9:23 Alexander Berntsen
2013-03-13 5:56 Zac Medico
2013-01-23 16:19 Zac Medico
2013-01-05 15:20 Zac Medico
2012-12-23 5:33 Arfrever Frehtes Taifersar Arahesis
2012-11-24 21:57 Zac Medico
2012-04-22 18:57 Zac Medico
2012-04-21 6:51 Zac Medico
2012-02-17 22:19 Zac Medico
2012-02-16 0:33 Zac Medico
2012-02-14 23:40 Zac Medico
2012-02-10 1:28 Zac Medico
2012-02-08 1:16 Zac Medico
2012-02-08 0:36 Zac Medico
2011-10-28 2:34 Zac Medico
2011-10-16 20:26 Zac Medico
2011-06-03 10:16 Zac Medico
2011-05-24 5:31 Zac Medico
2011-05-24 0:33 Zac Medico
2011-05-09 5:16 Zac Medico
2011-03-26 7:39 Zac Medico
2011-03-26 3:24 Zac Medico
2011-03-25 4:34 Zac Medico
2011-03-25 4:34 Zac Medico
2011-03-25 4:34 Zac Medico
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4580734caa18250bd0c2bc8241dc36f308cdef2b.zmedico@gentoo \
--to=zmedico@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox