mercurial/phases.py
changeset 25611 d89045a66e01
parent 25594 186321309d05
child 25613 a13c18c14ade
equal deleted inserted replaced
25610:37876ca00c0a 25611:d89045a66e01
   192                 for rev in roots:
   192                 for rev in roots:
   193                     revs[rev] = phase
   193                     revs[rev] = phase
   194                 for rev in repo.changelog.descendants(roots):
   194                 for rev in repo.changelog.descendants(roots):
   195                     revs[rev] = phase
   195                     revs[rev] = phase
   196 
   196 
   197     def getphaserevs(self, repo):
   197     def loadphaserevs(self, repo):
       
   198         """ensure phase information is loaded in the object"""
   198         if self._phaserevs is None:
   199         if self._phaserevs is None:
   199             try:
   200             try:
   200                 if repo.ui.configbool('experimental',
   201                 if repo.ui.configbool('experimental',
   201                                       'nativephaseskillswitch'):
   202                                       'nativephaseskillswitch'):
   202                     self._computephaserevspure(repo)
   203                     self._computephaserevspure(repo)
   203                 else:
   204                 else:
   204                     res = self._getphaserevsnative(repo)
   205                     res = self._getphaserevsnative(repo)
   205                     self._phaserevs, self._phasesets = res
   206                     self._phaserevs, self._phasesets = res
   206             except AttributeError:
   207             except AttributeError:
   207                 self._computephaserevspure(repo)
   208                 self._computephaserevspure(repo)
   208         return self._phaserevs
       
   209 
   209 
   210     def invalidate(self):
   210     def invalidate(self):
   211         self._phaserevs = None
   211         self._phaserevs = None
   212         self._phasesets = None
   212         self._phasesets = None
   213 
   213 
   231             return public
   231             return public
   232         if rev < nullrev:
   232         if rev < nullrev:
   233             raise ValueError(_('cannot lookup negative revision'))
   233             raise ValueError(_('cannot lookup negative revision'))
   234         if self._phaserevs is None or rev >= len(self._phaserevs):
   234         if self._phaserevs is None or rev >= len(self._phaserevs):
   235             self.invalidate()
   235             self.invalidate()
   236             self._phaserevs = self.getphaserevs(repo)
   236             self.loadphaserevs(repo)
   237         return self._phaserevs[rev]
   237         return self._phaserevs[rev]
   238 
   238 
   239     def write(self):
   239     def write(self):
   240         if not self.dirty:
   240         if not self.dirty:
   241             return
   241             return