comparison mercurial/repoview.py @ 18293:1f35d6737ed8

repoview: extract hideable revision computation in a dedicated function This will help extensions to plug into the hidden mechanism.
author Pierre-Yves David <pierre-yves.david@logilab.fr>
date Thu, 10 Jan 2013 10:25:02 +0100
parents 254b708fd37d
children f3b21beb9802
comparison
equal deleted inserted replaced
18291:5db16424142c 18293:1f35d6737ed8
10 import phases 10 import phases
11 import util 11 import util
12 import obsolete, bookmarks, revset 12 import obsolete, bookmarks, revset
13 13
14 14
15 def hideablerevs(repo):
16 """Revisions candidates to be hidden
17
18 This is a standalone function to help extensions to wrap it."""
19 return obsolete.getrevs(repo, 'obsolete')
20
15 def computehidden(repo): 21 def computehidden(repo):
16 """compute the set of hidden revision to filter 22 """compute the set of hidden revision to filter
17 23
18 During most operation hidden should be filtered.""" 24 During most operation hidden should be filtered."""
19 assert not repo.changelog.filteredrevs 25 assert not repo.changelog.filteredrevs
20 hideable = obsolete.getrevs(repo, 'obsolete') 26 hideable = hideablerevs(repo)
21 if hideable: 27 if hideable:
22 cl = repo.changelog 28 cl = repo.changelog
23 firsthideable = min(hideable) 29 firsthideable = min(hideable)
24 revs = cl.revs(start=firsthideable) 30 revs = cl.revs(start=firsthideable)
25 blockers = [r for r in revset._children(repo, revs, hideable) 31 blockers = [r for r in revset._children(repo, revs, hideable)