##// END OF EJS Templates
rust: Align DirstateEntry internals with Python/C DirstateItem...
rust: Align DirstateEntry internals with Python/C DirstateItem This propagate to this Rust struct the similar change that was made recently to the Python classe and C struct. Namely, instead of storing a four-valued `state` field we now store seven (bit-packed) booleans that give lower-level information. Additionally, the marker values -1 and -2 for mtime and size should not be used internally anymore. They are replaced by some combinations of booleans For now, all uses of of `DirstateEntry` still use the compatibility APIs with `state` and marker values. Later the Rust API for DirstateMap will be increasingly updated to the new style. Also change the expected result of the test_non_normal_other_parent_entries unit test. Only a `DirstateEntry` with `size == -2 && mtime != -1` is affected, but this case never occurs outside of unit tests. `size == -2` was the marker value for "from other parent" entries, where no meaningful mtime is stored. Differential Revision: https://phab.mercurial-scm.org/D11484

File last commit:

r47575:d4ba4d51 default
r48856:008959fc default
Show More
stack.py
24 lines | 762 B | text/x-python | PythonLexer
Boris Feld
stack: add a new module for stack-related commands...
r37018 # stack.py - Mercurial functions for stack definition
#
Raphaël Gomès
contributor: change mentions of mpm to olivia...
r47575 # Copyright Olivia Mackall <olivia@selenic.com> and other
Boris Feld
stack: add a new module for stack-related commands...
r37018 #
# 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
Augie Fackler
style: run a patched black on a subset of mercurial...
r43345
Boris Feld
stack: add a new module for stack-related commands...
r37018 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:
Augie Fackler
formatting: byteify all mercurial/ and hgext/ string literals...
r43347 rev = b'.'
Boris Feld
stack: add a new module for stack-related commands...
r37018
Augie Fackler
formatting: byteify all mercurial/ and hgext/ string literals...
r43347 revspec = b'only(%s) and not public() and not ::merge()'
av6
stack: use repo.revs() instead of revsetlang.formatspec() + scmutil.revrange()...
r43230 revisions = repo.revs(revspec, rev)
Boris Feld
stack: return a sorted smartrev by default...
r37022 revisions.sort()
return revisions