Mercurial > hg
view mercurial/mergeutil.py @ 34581:ee0d74083a22
templater: store revisions as ints so min/max won't compare them as strings
Because a template value has no explicit type (like ancient PHP), ifcontains()
has to coerce the type of the needle. Before, it was always converted to a
string, which meant any container type should be a list/dict of strings.
This no longer works since we've introduced min/max functions.
In order to work around the untyped nature of templater, this patch adds
a type specifier to hybrid dict/list. It isn't named as "valuetype" since
the _hybrid class can also wrap a dict.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Tue, 19 Sep 2017 23:13:46 +0900 |
parents | c1149533676b |
children | 2372284d9457 |
line wrap: on
line source
# mergeutil.py - help for merge processing in mercurial # # Copyright 2005-2007 Matt Mackall <mpm@selenic.com> # # 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 .i18n import _ from . import ( error, ) def checkunresolved(ms): if list(ms.unresolved()): raise error.Abort(_("unresolved merge conflicts " "(see 'hg help resolve')")) if ms.mdstate() != 's' or list(ms.driverresolved()): raise error.Abort(_('driver-resolved merge conflicts'), hint=_('run "hg resolve --all" to resolve'))