view mercurial/mergeutil.py @ 44746:c36a3fcfc36b stable

upgrade: properly filter action depending on planned work The `determineactions` function filters out deficiency that are not scheduled to be fixed by the target repository configuration. However it only did so for requirement we currently support, letting other actions for unsupported requirement through even if the target repo configuration did not request it. As a result the output of the command was easily polluted by experimental feature with no upgrade support. We rework the code to still filter out requirement based action without the faulty filtering. Differential Revision: https://phab.mercurial-scm.org/D8427
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Wed, 15 Apr 2020 18:10:19 +0200
parents 8ff1ecfadcd1
children 32ce4cbaec4b
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(
            _(b"unresolved merge conflicts (see 'hg help resolve')")
        )
    if ms.mdstate() != b's' or list(ms.driverresolved()):
        raise error.Abort(
            _(b'driver-resolved merge conflicts'),
            hint=_(b'run "hg resolve --all" to resolve'),
        )