mercurial/bundle2.py
changeset 25484 a5192774e925
parent 25481 6de96cb31176
child 25491 8cd0159207df
--- a/mercurial/bundle2.py	Fri Jun 05 13:31:18 2015 -0700
+++ b/mercurial/bundle2.py	Wed May 27 23:48:54 2015 -0700
@@ -1330,8 +1330,11 @@
         rpart.addparam('in-reply-to', str(inpart.id), mandatory=False)
         rpart.addparam('return', '%i' % ret, mandatory=False)
     if inpart.mandatory and not ret:
-        raise util.Abort(_('failed to update value for "%s/%s"')
-                         % (namespace, key))
+        kwargs = {}
+        for key in ('namespace', 'key', 'new', 'old', 'ret'):
+            if key in inpart.params:
+                kwargs[key] = inpart.params[key]
+        raise error.PushkeyFailed(partid=str(inpart.id), **kwargs)
 
 @parthandler('reply:pushkey', ('return', 'in-reply-to'))
 def handlepushkeyreply(op, inpart):