Mercurial > hg
changeset 37003:2987726085c6
histedit: use the new stack definition for histedit
Now that we have a common stack definition, use it in the hg histedit command.
Differential Revision: https://phab.mercurial-scm.org/D2398
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Fri, 19 Jan 2018 17:09:24 +0100 |
parents | a72198790e15 |
children | 68fcc5503ec5 |
files | hgext/histedit.py mercurial/destutil.py |
diffstat | 2 files changed, 12 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/histedit.py Fri Jan 19 16:52:56 2018 +0100 +++ b/hgext/histedit.py Fri Jan 19 17:09:24 2018 +0100 @@ -221,7 +221,7 @@ default=False, ) configitem('histedit', 'defaultrev', - default=configitem.dynamicdefault, + default=None, ) configitem('histedit', 'dropmissing', default=False,
--- a/mercurial/destutil.py Fri Jan 19 16:52:56 2018 +0100 +++ b/mercurial/destutil.py Fri Jan 19 17:09:24 2018 +0100 @@ -340,18 +340,20 @@ onheadcheck=onheadcheck, destspace=destspace) return repo[node].rev() -histeditdefaultrevset = 'reverse(only(.) and not public() and not ::merge())' - def desthistedit(ui, repo): """Default base revision to edit for `hg histedit`.""" - default = ui.config('histedit', 'defaultrev', histeditdefaultrevset) - if default: + default = ui.config('histedit', 'defaultrev') + + if default is None: + revs = stack.getstack(repo) + elif default: revs = scmutil.revrange(repo, [default]) - if revs: - # The revset supplied by the user may not be in ascending order nor - # take the first revision. So do this manually. - revs.sort() - return revs.first() + + if revs: + # The revset supplied by the user may not be in ascending order nor + # take the first revision. So do this manually. + revs.sort() + return revs.first() return None