--- a/hgext3rd/topic/revset.py Mon Mar 14 23:37:58 2016 +0000
+++ b/hgext3rd/topic/revset.py Thu Mar 17 09:13:12 2016 -0700
@@ -1,7 +1,7 @@
from mercurial import revset
from mercurial import util
-from . import constants, destination
+from . import constants, destination, stack
try:
mkmatcher = revset._stringmatcher
@@ -45,6 +45,22 @@
branch = repo['.'].branch()
return subset & destination.ngtip(repo, branch)
+def stackset(repo, subset, x):
+ """`stack()`
+ All relevant changes in the current topic,
+
+ This is roughly equivalent to 'topic(.) - obsolete' with a sorting moving
+ unstable changeset after there future parent (as if evolve where already
+ run)."""
+ topic = repo.currenttopic
+ if not topic:
+ raise error.Abort(_('no active topic to list'))
+ # ordering hack, boo
+ return revset.baseset(stack.getstack(repo, topic)) & subset
+
+
+
def modsetup():
revset.symbols.update({'topic': topicset})
revset.symbols.update({'ngtip': ngtipset})
+ revset.symbols.update({'stack': stackset})