diff mercurial/scmutil.py @ 39902:a477679f6323

pullreport: skip filtered revs instead of obsolete ones Obsolescence is closely related to visibility but still a distinct concept. We can receive changesets that are obsolete but visible (eg: when pulling orphans). Such changeset should be reported too. In addition, the filtering level can be anything, we should respect it.
author Boris Feld <boris.feld@octobus.net>
date Thu, 27 Sep 2018 16:35:10 +0200
parents d739f423bf06
children b5e12039e6e0
line wrap: on
line diff
--- a/mercurial/scmutil.py	Thu Sep 27 18:06:13 2018 +0200
+++ b/mercurial/scmutil.py	Thu Sep 27 16:35:10 2018 +0200
@@ -39,6 +39,7 @@
     pycompat,
     revsetlang,
     similar,
+    smartset,
     url,
     util,
     vfs,
@@ -1622,11 +1623,9 @@
             if origrepolen >= len(repo):
                 return
 
-            # Compute the bounds of new revisions' range, excluding obsoletes.
-            unfi = repo.unfiltered()
-            revs = unfi.revs('%d: and not obsolete()', origrepolen)
+            # Compute the bounds of new visible revisions' range.
+            revs = smartset.spanset(repo, start=origrepolen)
             if not revs:
-                # Got only obsoletes.
                 return
             minrev, maxrev = repo[revs.min()], repo[revs.max()]