Mercurial > public > mercurial-scm > hg-stable
diff mercurial/phases.py @ 15922:23921c17299a
phases: mechanism to allow extension to alter initial computation of phase
This commit add a whennodata list where extension can register a callback to be
called if no phase related data are found in the repository.
The goal is to ensure the existing extension that move phase data in 2.1 can
compute consistent phase boundary for existing repo.
author | Pierre-Yves David <pierre-yves.david@logilab.fr> |
---|---|
date | Wed, 18 Jan 2012 17:23:54 +0100 |
parents | 4252d9f08d7e |
children | b9c7ac405757 |
line wrap: on
line diff
--- a/mercurial/phases.py Wed Jan 18 17:11:27 2012 +0100 +++ b/mercurial/phases.py Wed Jan 18 17:23:54 2012 +0100 @@ -109,7 +109,6 @@ def readroots(repo): """Read phase roots from disk""" roots = [set() for i in allphases] - roots[0].add(nullid) try: f = repo.sopener('phaseroots') try: @@ -121,6 +120,8 @@ except IOError, inst: if inst.errno != errno.ENOENT: raise + for f in repo._phasedefaults: + roots = f(repo, roots) return roots def writeroots(repo):