Mercurial > hg-stable
changeset 48198:6edc8800dbc3
dispatch: use detailed exit code 250 for keyboard interrupt
Among our users at Google, we're still seeing several percent of
commands fail with exit code 255. I suspect keyboard interrupts is an
important remaining reason.
This is a resend of D10086 with some fixes for pager handling added
ahead of it.
Differential Revision: https://phab.mercurial-scm.org/D11628
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 02 Mar 2021 09:33:25 -0800 |
parents | 2f2107c01dee |
children | b669e40fbbd6 |
files | mercurial/dispatch.py tests/test-chg.t tests/test-commandserver.t tests/test-nointerrupt.t |
diffstat | 4 files changed, 10 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/dispatch.py Fri Oct 08 13:36:02 2021 -0700 +++ b/mercurial/dispatch.py Tue Mar 02 09:33:25 2021 -0800 @@ -316,7 +316,10 @@ except IOError as inst: if inst.errno != errno.EPIPE: raise - ret = -1 + if req.ui.configbool(b'ui', b'detailed-exit-code'): + ret = 250 + else: + ret = -1 finally: duration = util.timer() - starttime try:
--- a/tests/test-chg.t Fri Oct 08 13:36:02 2021 -0700 +++ b/tests/test-chg.t Tue Mar 02 09:33:25 2021 -0800 @@ -188,12 +188,12 @@ $ chg bulkwrite --pager=on --color no --config ui.formatted=True paged! 'going to write massive data\n' killed! (?) - [255] + [250] $ chg bulkwrite --pager=on --color no --config ui.formatted=True paged! 'going to write massive data\n' killed! (?) - [255] + [250] $ cd ..
--- a/tests/test-commandserver.t Fri Oct 08 13:36:02 2021 -0700 +++ b/tests/test-commandserver.t Tue Mar 02 09:33:25 2021 -0800 @@ -792,7 +792,7 @@ *** runcommand debugsuicide interrupted! killed! - [255] + [250] #endif
--- a/tests/test-nointerrupt.t Fri Oct 08 13:36:02 2021 -0700 +++ b/tests/test-nointerrupt.t Tue Mar 02 09:33:25 2021 -0800 @@ -66,7 +66,7 @@ $ sh -c "../send-signal.sh INT" & $ hg wait-signal interrupted! - [255] + [250] $ cat >> $HGRCPATH << EOF > [experimental] @@ -77,7 +77,7 @@ $ sh -c "../send-signal.sh INT" & $ hg wait-signal interrupted! - [255] + [250] $ cat >> $HGRCPATH << EOF > [experimental] @@ -91,4 +91,4 @@ press ^C again to terminate immediately (dangerous) end of unsafe operation interrupted! - [255] + [250]