mercurial/mergeutil.py
author Wojciech Lis <wlis@fb.com>
Thu, 30 Nov 2017 16:01:53 -0800
changeset 35436 86b8cc1f244e
parent 30503 c1149533676b
child 43076 2372284d9457
permissions -rw-r--r--
worker: make windows workers daemons The windows workers weren't daemons and were not correctly killed when ctrl-c'd from the terminal. Withi this change when the main thread is killed, all daemons get killed as well. I also reduced the time we give to workers to cleanup nicely to not have people ctrl-c'ing when they get inpatient. The output when threads clened up nicely: PS C:\<dir>> hg.exe sparse --disable-profile SparseProfiles/<profile>.sparse interrupted! The output when threads don't clenup in 1 sec: PS C:\<dir> hg.exe sparse --enable-profile SparseProfiles/<profile>.sparse failed to kill worker threads while handling an exception interrupted! Exception in thread Thread-4 (most likely raised during interpreter shutdown): PS C:\<dir>> Test Plan: Run hg command on windows (pull/update/sparse). Ctrl-C'd sparse --enable-profile command that was using threads and observed in proces explorer that all threads got killed. ran tests on CentOS Differential Revision: https://phab.mercurial-scm.org/D1564
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
30503
c1149533676b checkunresolved: move to new package to help avoid import cycles
Augie Fackler <augie@google.com>
parents: 30502
diff changeset
     1
# mergeutil.py - help for merge processing in mercurial
2874
4ec58b157265 refactor text diff/patch code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
     2
#
4635
63b9d2deed48 Updated copyright notices and add "and others" to "hg version"
Thomas Arendsen Hein <thomas@intevation.de>
parents: 4633
diff changeset
     3
# Copyright 2005-2007 Matt Mackall <mpm@selenic.com>
2874
4ec58b157265 refactor text diff/patch code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
     4
#
8225
46293a0c7e9f updated license to be explicit about GPL version 2
Martin Geisler <mg@lazybytes.net>
parents: 8210
diff changeset
     5
# This software may be used and distributed according to the terms of the
10263
25e572394f5c Update license to GPLv2+
Matt Mackall <mpm@selenic.com>
parents: 10249
diff changeset
     6
# GNU General Public License version 2 or any later version.
2874
4ec58b157265 refactor text diff/patch code.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
     7
28322
ebd0e86bdf89 cmdutil: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com>
parents: 28313
diff changeset
     8
from __future__ import absolute_import
ebd0e86bdf89 cmdutil: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com>
parents: 28313
diff changeset
     9
ebd0e86bdf89 cmdutil: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com>
parents: 28313
diff changeset
    10
from .i18n import _
ebd0e86bdf89 cmdutil: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com>
parents: 28313
diff changeset
    11
ebd0e86bdf89 cmdutil: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com>
parents: 28313
diff changeset
    12
from . import (
ebd0e86bdf89 cmdutil: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com>
parents: 28313
diff changeset
    13
    error,
ebd0e86bdf89 cmdutil: use absolute_import
Gregory Szorc <gregory.szorc@gmail.com>
parents: 28313
diff changeset
    14
)
19211
3bfd7f1e7485 summary: augment output with info from extensions
Bryan O'Sullivan <bryano@fb.com>
parents: 19129
diff changeset
    15
30286
3d38a0bc774f cmdutil: refactor checkunresolved
timeless <timeless@mozdev.org>
parents: 30182
diff changeset
    16
def checkunresolved(ms):
3d38a0bc774f cmdutil: refactor checkunresolved
timeless <timeless@mozdev.org>
parents: 30182
diff changeset
    17
    if list(ms.unresolved()):
3d38a0bc774f cmdutil: refactor checkunresolved
timeless <timeless@mozdev.org>
parents: 30182
diff changeset
    18
        raise error.Abort(_("unresolved merge conflicts "
3d38a0bc774f cmdutil: refactor checkunresolved
timeless <timeless@mozdev.org>
parents: 30182
diff changeset
    19
                            "(see 'hg help resolve')"))
3d38a0bc774f cmdutil: refactor checkunresolved
timeless <timeless@mozdev.org>
parents: 30182
diff changeset
    20
    if ms.mdstate() != 's' or list(ms.driverresolved()):
3d38a0bc774f cmdutil: refactor checkunresolved
timeless <timeless@mozdev.org>
parents: 30182
diff changeset
    21
        raise error.Abort(_('driver-resolved merge conflicts'),
3d38a0bc774f cmdutil: refactor checkunresolved
timeless <timeless@mozdev.org>
parents: 30182
diff changeset
    22
                          hint=_('run "hg resolve --all" to resolve'))