keepalive: set buffering=True to do more efficient reads of headers
Support for buffering was added to python in
d09d6fe31b61, first released with
python2.7. Without this, the entirety of the response headers is read
byte-by-byte (it does more efficient reads when it gets to the non-header part
of the response).
--- a/mercurial/keepalive.py Thu Jun 01 18:23:20 2017 -0700
+++ b/mercurial/keepalive.py Fri Jun 02 14:08:26 2017 -0700
@@ -354,7 +354,8 @@
def __init__(self, sock, debuglevel=0, strict=0, method=None):
httplib.HTTPResponse.__init__(self, sock, debuglevel=debuglevel,
- strict=True, method=method)
+ strict=True, method=method,
+ buffering=True)
self.fileno = sock.fileno
self.code = None
self._rbuf = ''