From 430a81b039533e8c00da007294a43d99172136a6 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 14 Feb 2011 07:46:39 -0800 Subject: Recognize git-2.eclass when reinstalling self. --- pym/_emerge/Scheduler.py | 3 ++- pym/_emerge/depgraph.py | 3 ++- pym/_emerge/resolver/output.py | 3 ++- pym/portage/dbapi/vartree.py | 14 ++++++++++---- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py index 4ff889396..34e5e6fa0 100644 --- a/pym/_emerge/Scheduler.py +++ b/pym/_emerge/Scheduler.py @@ -931,7 +931,8 @@ class Scheduler(PollScheduler): return True elif pkg.cpv != self._running_portage.cpv or \ '9999' in pkg.cpv or \ - 'git' in pkg.inherited: + 'git' in pkg.inherited or \ + 'git-2' in pkg.inherited: return True return False diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index f569b1815..271d4bfbd 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -4271,7 +4271,8 @@ class depgraph(object): (running_portage is None or \ running_portage.cpv != replacement_portage.cpv or \ '9999' in replacement_portage.cpv or \ - 'git' in replacement_portage.inherited): + 'git' in replacement_portage.inherited or \ + 'git-2' in replacement_portage.inherited): # update from running_portage to replacement_portage asap asap_nodes.append(replacement_portage) diff --git a/pym/_emerge/resolver/output.py b/pym/_emerge/resolver/output.py index 457b786b1..a5b5e27b7 100644 --- a/pym/_emerge/resolver/output.py +++ b/pym/_emerge/resolver/output.py @@ -732,7 +732,8 @@ def display(depgraph, mylist, favorites=[], verbosity=None): not conf.quiet: if not vardb.cpv_exists(pkg.cpv) or \ '9999' in pkg.cpv or \ - 'git' in pkg.inherited: + 'git' in pkg.inherited or \ + 'git-2' in pkg.inherited: if mylist_index < len(mylist) - 1: p.append(colorize("WARN", "*** Portage will stop merging at this point and reload itself,")) p.append(colorize("WARN", " then resume the merge.")) diff --git a/pym/portage/dbapi/vartree.py b/pym/portage/dbapi/vartree.py index ccf239ff1..9be12fb3e 100644 --- a/pym/portage/dbapi/vartree.py +++ b/pym/portage/dbapi/vartree.py @@ -3825,11 +3825,17 @@ class dblink(object): myroot = None if self.vartree.dbapi._categories is not None: self.vartree.dbapi._categories = None + reinstall_self = False if self.myroot == "/" and \ - match_from_list(PORTAGE_PACKAGE_ATOM, [self.mycpv]) and \ - (not self.vartree.dbapi.cpv_exists(self.mycpv) or \ - '9999' in self.mycpv or \ - 'git' in self.settings.get('INHERITED', '').split()): + match_from_list(PORTAGE_PACKAGE_ATOM, [self.mycpv]): + inherited = frozenset(self.settings.get('INHERITED', '').split()) + if not self.vartree.dbapi.cpv_exists(self.mycpv) or \ + '9999' in self.mycpv or \ + 'git' in inherited or \ + 'git-2' in inherited: + reinstall_self = True + + if reinstall_self: # Load lazily referenced portage submodules into memory, # so imports won't fail during portage upgrade/downgrade. portage.proxy.lazyimport._preload_portage_submodules() -- cgit v1.2.3-1-g7c22