diff --git a/pym/_emerge/FakeVartree.py b/pym/_emerge/FakeVartree.py index d4dbe97..904a7a5 100644 --- a/pym/_emerge/FakeVartree.py +++ b/pym/_emerge/FakeVartree.py @@ -72,6 +72,8 @@ class FakeVartree(vartree): self._portdb = portdb self._global_updates = None + self._debug = root_config.settings.get("PORTAGE_DEBUG") == "1" + @property def root(self): warnings.warn("The root attribute of " @@ -88,7 +90,19 @@ class FakeVartree(vartree): be accessed directly from the Package instance instead of via aux_get(). """ + tracing = False + if self._debug: + if cpv in ('=dev-libs/openssl-0.9.8*', 'dev-libs/openssl:0.9.8'): + tracing = True + import portage.debug as portage_debug + portage_debug.set_trace(True) matches = self._match(cpv, use_cache=use_cache) + if self._debug: + portage.util.writemsg("FakeVartree._match_wrapper('%s'): %s\n" % + (cpv, matches), noiselevel=-1) + if tracing: + portage_debug.set_trace(False) + for cpv in matches: if cpv in self._aux_get_history: continue @@ -199,6 +213,10 @@ class FakeVartree(vartree): if pkg is None: pkg = self._pkg(cpv) + if self._debug: + portage.util.writemsg("FakeVartree._sync: %s slot_atom: %s counter: %s\n" % + (pkg, pkg.slot_atom, pkg.counter), noiselevel=-1) + other_counter = slot_counters.get(pkg.slot_atom) if other_counter is not None: if other_counter > pkg.counter: @@ -207,6 +225,11 @@ class FakeVartree(vartree): slot_counters[pkg.slot_atom] = pkg.counter pkg_vardb.cpv_inject(pkg) + if self._debug: + portage.util.writemsg("FakeVartree._sync:\n", noiselevel=-1) + for cpv in sorted(pkg_vardb.cpv_all()): + portage.util.writemsg("\t%s\n" % (cpv,), noiselevel=-1) + real_vardb.flush_cache() def _pkg(self, cpv):