##// END OF EJS Templates
context: remove unwanted assignments in basectx.__new__() (API)...
context: remove unwanted assignments in basectx.__new__() (API) The two subclasses in core apparently didn't trust __new__() to do the job anyway (they both reassigned all the properties after). Differential Revision: https://phab.mercurial-scm.org/D2966

File last commit:

r37022:68fcc550 default
r37188:d7f3fdab default
Show More
stack.py
29 lines | 869 B | text/x-python | PythonLexer
Boris Feld
stack: add a new module for stack-related commands...
r37018 # stack.py - Mercurial functions for stack definition
#
# Copyright Matt Mackall <mpm@selenic.com> and other
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
from __future__ import absolute_import
from . import (
revsetlang,
scmutil,
)
def getstack(repo, rev=None):
Boris Feld
stack: return a sorted smartrev by default...
r37022 """return a sorted smartrev of the stack containing either rev if it is
not None or the current working directory parent.
Boris Feld
stack: add a new module for stack-related commands...
r37018
The stack will always contain all drafts changesets which are ancestors to
the revision and are not merges.
"""
if rev is None:
rev = '.'
revspec = 'reverse(only(%s) and not public() and not ::merge())'
revset = revsetlang.formatspec(revspec, rev)
Boris Feld
stack: return a sorted smartrev by default...
r37022 revisions = scmutil.revrange(repo, [revset])
revisions.sort()
return revisions