mercurial/obsolete.py
changeset 18276 834ef7e70d0f
parent 18275 9818f22785b7
child 18277 a58260bc101f
equal deleted inserted replaced
18275:9818f22785b7 18276:834ef7e70d0f
   669     return set(r for r in cl.descendants(obs) if r not in obs)
   669     return set(r for r in cl.descendants(obs) if r not in obs)
   670 
   670 
   671 @cachefor('suspended')
   671 @cachefor('suspended')
   672 def _computesuspendedset(repo):
   672 def _computesuspendedset(repo):
   673     """the set of obsolete parents with non obsolete descendants"""
   673     """the set of obsolete parents with non obsolete descendants"""
   674     return set(repo.revs('obsolete() and obsolete()::unstable()'))
   674     suspended = repo.changelog.ancestors(getrevs(repo, 'unstable'))
       
   675     return set(r for r in getrevs(repo, 'obsolete') if r in suspended)
   675 
   676 
   676 @cachefor('extinct')
   677 @cachefor('extinct')
   677 def _computeextinctset(repo):
   678 def _computeextinctset(repo):
   678     """the set of obsolete parents without non obsolete descendants"""
   679     """the set of obsolete parents without non obsolete descendants"""
   679     return set(repo.revs('obsolete() - obsolete()::unstable()'))
   680     return set(repo.revs('obsolete() - obsolete()::unstable()'))