bundle2: keep hint close to the primary message when remote abort stable
authorPierre-Yves David <pierre-yves.david@ens-lyon.org>
Fri, 10 Feb 2017 17:56:47 +0100
branchstable
changeset 30908 4c8dcb491974
parent 30907 75149f84eac7
child 30909 d554e624c5fe
bundle2: keep hint close to the primary message when remote abort The remote hint message was ignored when reporting the remote error and passed to the local generic abort error. I think I might initially have tried to avoid reimplementing logic controlling the hint display depending of the verbosity level. However, first, there does not seems to have such verbosity related logic and second the resulting was wrong as the primary error and the hint were split apart. We now properly print the hint as remote output.
mercurial/exchange.py
tests/test-bundle2-exchange.t
--- a/mercurial/exchange.py	Sun Feb 12 02:23:33 2017 +0900
+++ b/mercurial/exchange.py	Fri Feb 10 17:56:47 2017 +0100
@@ -904,7 +904,9 @@
             raise error.Abort(_('missing support for %s') % exc)
         except bundle2.AbortFromPart as exc:
             pushop.ui.status(_('remote: %s\n') % exc)
-            raise error.Abort(_('push failed on remote'), hint=exc.hint)
+            if exc.hint is not None:
+                pushop.ui.status(_('remote: %s\n') % ('(%s)' % exc.hint))
+            raise error.Abort(_('push failed on remote'))
     except error.PushkeyFailed as exc:
         partid = int(exc.partid)
         if partid not in pushop.pkfailcb:
--- a/tests/test-bundle2-exchange.t	Sun Feb 12 02:23:33 2017 +0900
+++ b/tests/test-bundle2-exchange.t	Fri Feb 10 17:56:47 2017 +0100
@@ -518,16 +518,16 @@
   pushing to ssh://user@dummy/other
   searching for changes
   remote: Abandon ship!
+  remote: (don't panic)
   abort: push failed on remote
-  (don't panic)
   [255]
 
   $ hg -R main push http://localhost:$HGPORT2/ -r e7ec4e813ba6
   pushing to http://localhost:$HGPORT2/
   searching for changes
   remote: Abandon ship!
+  remote: (don't panic)
   abort: push failed on remote
-  (don't panic)
   [255]