# HG changeset patch # User Augie Fackler # Date 1438798517 14400 # Node ID fa14ba7b96679a1bf3f3917bed39375da52e3eda # Parent cbbdd085c9910019d7ed3aa9c036dc356adb9331 wireproto: make wirepeer look-before-you-leap on batching This means that users of request batching don't need to worry themselves with capability checking. Instead, they can just use batching, and if the remote server doesn't support batching for some reason the wirepeer code will transparently un-batch the requests. This will allow for some slight simplification in a handful of places. Prior to this change, largefiles would have been silently broken against a server which did not support batching. diff -r cbbdd085c991 -r fa14ba7b9667 mercurial/wireproto.py --- a/mercurial/wireproto.py Wed Aug 05 14:51:34 2015 -0400 +++ b/mercurial/wireproto.py Wed Aug 05 14:15:17 2015 -0400 @@ -149,7 +149,10 @@ class wirepeer(peer.peerrepository): def batch(self): - return remotebatch(self) + if self.capable('batch'): + return remotebatch(self) + else: + return peer.localbatch(self) def _submitbatch(self, req): cmds = [] for op, argsdict in req: