D3136: stack: follow-up on the stack revset

lothiraldan (Boris Feld) phabricator at mercurial-scm.org
Thu Apr 5 16:23:18 UTC 2018


lothiraldan created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  Follow good-practice for defining the stack revset.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D3136

AFFECTED FILES
  mercurial/revset.py

CHANGE DETAILS

diff --git a/mercurial/revset.py b/mercurial/revset.py
--- a/mercurial/revset.py
+++ b/mercurial/revset.py
@@ -28,7 +28,7 @@
     revsetlang,
     scmutil,
     smartset,
-    stack,
+    stack as stackmod,
     util,
 )
 from .utils import (
@@ -1539,19 +1539,19 @@
     return _phase(repo, subset, target)
 
 @predicate('stack([revs])', safe=True)
-def _stack(repo, subset, x):
-    # experimental revset for the stack of changesets or working directory
-    # parent
+def stack(repo, subset, x):
+    """Experimental revset for the stack of changesets or working directory
+    parent. (EXPERIMENTAL)
+    """
     if x is None:
-        stacks = stack.getstack(repo, x)
+        stacks = stackmod.getstack(repo, x)
     else:
         stacks = smartset.baseset([])
         for revision in getset(repo, fullreposet(repo), x):
-            currentstack = stack.getstack(repo, revision)
+            currentstack = stackmod.getstack(repo, revision)
             stacks = stacks + currentstack
 
-    # Force to use the order of the stacks instead of the subset one
-    return stacks & subset
+    return subset & stacks
 
 def parentspec(repo, subset, x, n, order):
     """``set^0``



To: lothiraldan, #hg-reviewers
Cc: mercurial-devel


More information about the Mercurial-devel mailing list