Comments
Patch
@@ -21,14 +21,18 @@ def hideablerevs(repo):
This is a standalone function to help extensions to wrap it."""
return obsolete.getrevs(repo, 'obsolete')
def _getstatichidden(repo):
- """Cacheable revisions blocking hidden changesets from being filtered.
+ """Revision to be hidden (disregarding dynamic blocker)
- Additional non-cached hidden blockers are computed in _getdynamicblockers.
- This is a standalone function to help extensions to wrap it."""
+ To keep a consistent graph, we cannot hide any revisions with non-hidden
+ descendants. This function compute the set of revision that could be hidden
+ while keeping the graph consistent.
+
+ A second pass will be done to apply "dynamic blocker" like bookmarks or
+ working directory parents."""
assert not repo.changelog.filteredrevs
hideable = hideablerevs(repo)
if hideable:
actuallyhidden = {}
getphase = repo._phasecache.phase