* [gentoo-commits] proj/portage:master commit in: pym/portage/dbapi/, bin/
@ 2011-09-23 2:30 Zac Medico
0 siblings, 0 replies; 3+ messages in thread
From: Zac Medico @ 2011-09-23 2:30 UTC (permalink / raw
To: gentoo-commits
commit: c83131e33c4c0138033c439da91fd3e257a75c1a
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 23 02:29:53 2011 +0000
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Fri Sep 23 02:29:53 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=c83131e3
portdbapi.xmatch: deprecate list-visible
---
bin/repoman | 2 +-
pym/portage/dbapi/porttree.py | 5 +++++
2 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/bin/repoman b/bin/repoman
index 7532a99..85c9c17 100755
--- a/bin/repoman
+++ b/bin/repoman
@@ -1927,7 +1927,7 @@ for x in scanlist:
if not baddepsyntax:
ismasked = not ebuild_archs or \
- pkg.cpv not in portdb.xmatch("list-visible", pkg.cp)
+ pkg.cpv not in portdb.xmatch("match-visible", pkg.cp)
if ismasked:
if not have_pmasked:
have_pmasked = bool(dep_settings._getMaskAtom(
diff --git a/pym/portage/dbapi/porttree.py b/pym/portage/dbapi/porttree.py
index 4f5dc78..eb7e36a 100644
--- a/pym/portage/dbapi/porttree.py
+++ b/pym/portage/dbapi/porttree.py
@@ -811,6 +811,11 @@ class portdbapi(dbapi):
"caching match function; very trick stuff"
if level == "list-visible":
level = "match-visible"
+ warnings.warn("The 'list-visible' mode of "
+ "portage.dbapi.porttree.portdbapi.xmatch "
+ "has been renamed to match-visible",
+ DeprecationWarning, stacklevel=2)
+
#if no updates are being made to the tree, we can consult our xcache...
if self.frozen:
try:
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [gentoo-commits] proj/portage:master commit in: pym/portage/dbapi/, bin/
@ 2011-09-24 20:58 Zac Medico
0 siblings, 0 replies; 3+ messages in thread
From: Zac Medico @ 2011-09-24 20:58 UTC (permalink / raw
To: gentoo-commits
commit: 75907929be736e2d4cf088d8d9861f2666e59557
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 24 20:58:16 2011 +0000
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Sat Sep 24 20:58:16 2011 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=75907929
portdbapi.xmatch: optimize minimum-visible
Also, make repoman cache IUSE, since that's required for _match_use to
work effciently. This will eliminate lots of redundant aux_get calls
for repoman, triggered by USE deps.
---
bin/repoman | 2 +-
pym/portage/dbapi/porttree.py | 14 ++++----------
2 files changed, 5 insertions(+), 11 deletions(-)
diff --git a/bin/repoman b/bin/repoman
index 85c9c17..184c5ef 100755
--- a/bin/repoman
+++ b/bin/repoman
@@ -627,7 +627,7 @@ root_config = RootConfig(repoman_settings, trees[root], None)
# We really only need to cache the metadata that's necessary for visibility
# filtering. Anything else can be discarded to reduce memory consumption.
portdb._aux_cache_keys.clear()
-portdb._aux_cache_keys.update(["EAPI", "KEYWORDS", "SLOT"])
+portdb._aux_cache_keys.update(["EAPI", "IUSE", "KEYWORDS", "SLOT"])
reposplit = myreporoot.split(os.path.sep)
repolevel = len(reposplit)
diff --git a/pym/portage/dbapi/porttree.py b/pym/portage/dbapi/porttree.py
index 42e5ca1..782cecc 100644
--- a/pym/portage/dbapi/porttree.py
+++ b/pym/portage/dbapi/porttree.py
@@ -957,16 +957,10 @@ class portdbapi(dbapi):
mydep.slot != metadata["SLOT"]:
continue
- if mydep.use is not None:
- mydep_with_repo = mydep
- if repo is not None and mydep.repo is None:
- mydep_with_repo = mydep.with_repo(repo)
- has_iuse = False
- for has_iuse in self._iter_match_use(
- mydep_with_repo, [cpv]):
- break
- if has_iuse is False:
- continue
+ if mydep.unevaluated_atom.use is not None and \
+ not self._match_use(mydep, cpv, metadata):
+ continue
+
myval = cpv
break
if myval:
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [gentoo-commits] proj/portage:master commit in: pym/portage/dbapi/, bin/
@ 2012-04-22 19:14 Zac Medico
0 siblings, 0 replies; 3+ messages in thread
From: Zac Medico @ 2012-04-22 19:14 UTC (permalink / raw
To: gentoo-commits
commit: dd0976cc34dda2759348e64ffb668fc4821fe86d
Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
AuthorDate: Sun Apr 22 19:13:58 2012 +0000
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
CommitDate: Sun Apr 22 19:13:58 2012 +0000
URL: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=dd0976cc
portdbapi: update comment about repoman caches
---
bin/repoman | 3 +++
pym/portage/dbapi/porttree.py | 2 +-
2 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/bin/repoman b/bin/repoman
index 4d39cb8..eedb588 100755
--- a/bin/repoman
+++ b/bin/repoman
@@ -1186,6 +1186,9 @@ def vcs_new_changed(relative_path):
have_pmasked = False
have_dev_keywords = False
dofail = 0
+
+# NOTE: match-all caches are not shared due to potential
+# differences between profiles in _get_implicit_iuse.
arch_caches={}
arch_xmatch_caches = {}
shared_xmatch_caches = {"cp-list":{}}
diff --git a/pym/portage/dbapi/porttree.py b/pym/portage/dbapi/porttree.py
index b060dd6..bdb87f1 100644
--- a/pym/portage/dbapi/porttree.py
+++ b/pym/portage/dbapi/porttree.py
@@ -729,7 +729,7 @@ class portdbapi(dbapi):
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 old-style virtuals).
+ # profile (due to differences in _get_implicit_iuse).
self.xcache["match-all"][(mycp, mycp)] = cachelist
return cachelist[:]
mysplit = mycp.split("/")
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2012-04-22 19:14 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-09-23 2:30 [gentoo-commits] proj/portage:master commit in: pym/portage/dbapi/, bin/ Zac Medico
-- strict thread matches above, loose matches on Subject: below --
2011-09-24 20:58 Zac Medico
2012-04-22 19:14 Zac Medico
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox