<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Mon, Apr 24, 2017 at 11:39 AM, Augie Fackler <span dir="ltr"><<a href="mailto:raf@durin42.com" target="_blank">raf@durin42.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"># HG changeset patch<br>
# User Augie Fackler <<a href="mailto:augie@google.com">augie@google.com</a>><br>
# Date 1493059110 14400<br>
#      Mon Apr 24 14:38:30 2017 -0400<br>
# Branch stable<br>
# Node ID 52cca17ac523b490acdab259e794e7<wbr>c2898efeda<br>
# Parent  40cf693fc07d846502f9c15a160288<wbr>0ca99d7b56<br>
tests: add lots of regex matching to test-http-bad-server.t<br>
<br>
This makes the test pass in Python 2.6. It's all one of two problems:<br>
<br>
1)<br>
  abort: error: '' (2.7)<br>
  vs<br>
  abort: error: (2.6)<br>
<br>
2) 65537 (2.7) vs -1 (2.6)<br>
<br>
With some...unfortunate escaping required due to how regular<br>
expressions work. Sigh.<br></blockquote><div><br></div><div>Ugh. I'd be tempted to require 2.7 to run the test.</div><div><br></div><div>Another alternative is to monkeypatch readline() so it does the right thing. We already have hacks in keepalive.py to work around bugs in the stdlib.<br></div><div><br></div><div>FWIW since this test is already on the flaky side, I was considering just disabling it wholesale on stable until we can make it more robust next cycle.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
diff --git a/tests/test-http-bad-server.t b/tests/test-http-bad-server.t<br>
--- a/tests/test-http-bad-server.t<br>
+++ b/tests/test-http-bad-server.t<br>
@@ -71,13 +71,13 @@ Failure to read all bytes in initial HTT<br>
 TODO this error message is not very good<br>
<br>
   $ hg clone http://localhost:$HGPORT/ clone<br>
-  abort: error: ''<br>
+  abort: error: (''|) (re)<br>
   [255]<br>
<br>
   $ killdaemons.py $DAEMON_PIDS<br>
<br>
   $ cat error.log<br>
-  readline(1 from 65537) -> (1) G<br>
+  readline\(1 from (-1|65537)\) -> \(1\) G (re)<br>
   read limit reached; closing socket<br>
<br>
   $ rm -f error.log<br>
@@ -87,13 +87,13 @@ Same failure, but server reads full HTTP<br>
   $ hg --config badserver.closeafterrecvbytes=<wbr>40 serve -p $HGPORT -d --pid-file=hg.pid -E error.log<br>
   $ cat hg.pid > $DAEMON_PIDS<br>
   $ hg clone http://localhost:$HGPORT/ clone<br>
-  abort: error: ''<br>
+  abort: error: (''|) (re)<br>
   [255]<br>
<br>
   $ killdaemons.py $DAEMON_PIDS<br>
<br>
   $ cat error.log<br>
-  readline(40 from 65537) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n<br>
+  readline\(40 from (-1|65537)\) -> \(33\) GET /\?cmd=capabilities HTTP/1.1\\r\\n (re)<br>
   readline(7 from -1) -> (7) Accept-<br>
   read limit reached; closing socket<br>
<br>
@@ -104,13 +104,13 @@ Failure on subsequent HTTP request on th<br>
   $ hg --config badserver.closeafterrecvbytes=<wbr>210 serve -p $HGPORT -d --pid-file=hg.pid -E error.log<br>
   $ cat hg.pid > $DAEMON_PIDS<br>
   $ hg clone http://localhost:$HGPORT/ clone<br>
-  abort: error: ''<br>
+  abort: error: (''|) (re)<br>
   [255]<br>
<br>
   $ killdaemons.py $DAEMON_PIDS<br>
<br>
   $ cat error.log<br>
-  readline(210 from 65537) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n<br>
+  readline\(210 from (-1|65537)\) -> \(33\) GET /\?cmd=capabilities HTTP/1.1\\r\\n (re)<br>
   readline(177 from -1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(150 from -1) -> (35) accept: application/mercurial-0.1\r\n<br>
   readline(115 from -1) -> (23) host: localhost:$HGPORT\r\n<br>
@@ -123,10 +123,10 @@ Failure on subsequent HTTP request on th<br>
   write(21) -> Content-Length: 405\r\n<br>
   write(2) -> \r\n<br>
   write(405) -> lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,<wbr>revlogv1 bundle2=HG20%0Achangegroup%<wbr>3D01%2C02%0Adigests%3Dmd5%<wbr>2Csha1%2Csha512%0Aerror%<wbr>3Dabort%2Cunsupportedcontent%<wbr>2Cpushraced%2Cpushkey%<wbr>0Ahgtagsfnodes%0Alistkeys%<wbr>0Apushkey%0Aremote-<wbr>changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024 httpmediatype=0.1rx,0.1tx,0.<wbr>2tx compression=none<br>
-  readline(41 from 65537) -> (26) GET /?cmd=batch HTTP/1.1\r\n<br>
+  readline\(41 from (-1|65537)\) -> \(26\) GET /\?cmd=batch HTTP/1.1\\r\\n (re)<br>
   readline(15 from -1) -> (15) Accept-Encoding<br>
   read limit reached; closing socket<br>
-  readline(210 from 65537) -> (26) GET /?cmd=batch HTTP/1.1\r\n<br>
+  readline\(210 from (-1|65537)\) -> \(26\) GET /\?cmd=batch HTTP/1.1\\r\\n (re)<br>
   readline(184 from -1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(157 from -1) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n<br>
   readline(128 from -1) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\<wbr>r\n<br>
@@ -143,13 +143,13 @@ Failure to read getbundle HTTP request<br>
   $ cat hg.pid > $DAEMON_PIDS<br>
   $ hg clone http://localhost:$HGPORT/ clone<br>
   requesting all changes<br>
-  abort: error: ''<br>
+  abort: error: (''|) (re)<br>
   [255]<br>
<br>
   $ killdaemons.py $DAEMON_PIDS<br>
<br>
   $ cat error.log<br>
-  readline(292 from 65537) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n<br>
+  readline\(292 from (-1|65537)\) -> \(33\) GET /\?cmd=capabilities HTTP/1.1\\r\\n (re)<br>
   readline(259 from -1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(232 from -1) -> (35) accept: application/mercurial-0.1\r\n<br>
   readline(197 from -1) -> (23) host: localhost:$HGPORT\r\n<br>
@@ -162,12 +162,12 @@ Failure to read getbundle HTTP request<br>
   write(21) -> Content-Length: 405\r\n<br>
   write(2) -> \r\n<br>
   write(405) -> lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,<wbr>revlogv1 bundle2=HG20%0Achangegroup%<wbr>3D01%2C02%0Adigests%3Dmd5%<wbr>2Csha1%2Csha512%0Aerror%<wbr>3Dabort%2Cunsupportedcontent%<wbr>2Cpushraced%2Cpushkey%<wbr>0Ahgtagsfnodes%0Alistkeys%<wbr>0Apushkey%0Aremote-<wbr>changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024 httpmediatype=0.1rx,0.1tx,0.<wbr>2tx compression=none<br>
-  readline(123 from 65537) -> (26) GET /?cmd=batch HTTP/1.1\r\n<br>
+  readline\(123 from (-1|65537)\) -> \(26\) GET /\?cmd=batch HTTP/1.1\\r\\n (re)<br>
   readline(97 from -1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(70 from -1) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n<br>
   readline(41 from -1) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\<wbr>r\n<br>
   read limit reached; closing socket<br>
-  readline(292 from 65537) -> (26) GET /?cmd=batch HTTP/1.1\r\n<br>
+  readline\(292 from (-1|65537)\) -> \(26\) GET /\?cmd=batch HTTP/1.1\\r\\n (re)<br>
   readline(266 from -1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(239 from -1) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n<br>
   readline(210 from -1) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\<wbr>r\n<br>
@@ -183,9 +183,9 @@ Failure to read getbundle HTTP request<br>
   write(20) -> Content-Length: 42\r\n<br>
   write(2) -> \r\n<br>
   write(42) -> 96ee1d7354c4ad7372047672c36a1f<wbr>561e3a6a4c\n;<br>
-  readline(12 from 65537) -> (12) GET /?cmd=ge<br>
+  readline\(12 from (-1|65537)\) -> \(12\) GET /\?cmd=ge (re)<br>
   read limit reached; closing socket<br>
-  readline(292 from 65537) -> (30) GET /?cmd=getbundle HTTP/1.1\r\n<br>
+  readline\(292 from (-1|65537)\) -> \(30\) GET /\?cmd=getbundle HTTP/1.1\\r\\n (re)<br>
   readline(262 from -1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(235 from -1) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n<br>
   readline(206 from -1) -> (206) x-hgarg-1: bundlecaps=HG20%2Cbundle2%<wbr>3DHG20%250Achangegroup%253D01%<wbr>252C02%250Adigests%253Dmd5%<wbr>252Csha1%252Csha512%250Aerror%<wbr>253Dabort%<wbr>252Cunsupportedcontent%<wbr>252Cpushraced%252Cpushkey%<wbr>250Ahgtagsfnodes%250Ali<br>
@@ -199,13 +199,13 @@ Now do a variation using POST to send ar<br>
   $ cat hg.pid > $DAEMON_PIDS<br>
<br>
   $ hg clone http://localhost:$HGPORT/ clone<br>
-  abort: error: ''<br>
+  abort: error: (''|) (re)<br>
   [255]<br>
<br>
   $ killdaemons.py $DAEMON_PIDS<br>
<br>
   $ cat error.log<br>
-  readline(315 from 65537) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n<br>
+  readline\(315 from (-1|65537)\) -> \(33\) GET /\?cmd=capabilities HTTP/1.1\\r\\n (re)<br>
   readline(282 from -1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(255 from -1) -> (35) accept: application/mercurial-0.1\r\n<br>
   readline(220 from -1) -> (23) host: localhost:$HGPORT\r\n<br>
@@ -218,14 +218,14 @@ Now do a variation using POST to send ar<br>
   write(21) -> Content-Length: 418\r\n<br>
   write(2) -> \r\n<br>
   write(418) -> lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,<wbr>revlogv1 bundle2=HG20%0Achangegroup%<wbr>3D01%2C02%0Adigests%3Dmd5%<wbr>2Csha1%2Csha512%0Aerror%<wbr>3Dabort%2Cunsupportedcontent%<wbr>2Cpushraced%2Cpushkey%<wbr>0Ahgtagsfnodes%0Alistkeys%<wbr>0Apushkey%0Aremote-<wbr>changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024 httppostargs httpmediatype=0.1rx,0.1tx,0.<wbr>2tx compression=none<br>
-  readline(146 from 65537) -> (27) POST /?cmd=batch HTTP/1.1\r\n<br>
+  readline\(146 from (-1|65537)\) -> \(27\) POST /\?cmd=batch HTTP/1.1\\r\\n (re)<br>
   readline(119 from -1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(92 from -1) -> (41) content-type: application/mercurial-0.1\r\n<br>
   readline(51 from -1) -> (19) vary: X-HgProto-1\r\n<br>
   readline(32 from -1) -> (19) x-hgargs-post: 28\r\n<br>
   readline(13 from -1) -> (13) x-hgproto-1:<br>
   read limit reached; closing socket<br>
-  readline(315 from 65537) -> (27) POST /?cmd=batch HTTP/1.1\r\n<br>
+  readline\(315 from (-1|65537)\) -> \(27\) POST /\?cmd=batch HTTP/1.1\\r\\n (re)<br>
   readline(288 from -1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(261 from -1) -> (41) content-type: application/mercurial-0.1\r\n<br>
   readline(220 from -1) -> (19) vary: X-HgProto-1\r\n<br>
@@ -256,7 +256,7 @@ Server sends a single character from the<br>
   $ killdaemons.py $DAEMON_PIDS<br>
<br>
   $ cat error.log<br>
-  readline(65537) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(33\) GET /\?cmd=capabilities HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (35) accept: application/mercurial-0.1\r\n<br>
   readline(-1) -> (23) host: localhost:$HGPORT\r\n<br>
@@ -281,7 +281,7 @@ Server sends an incomplete capabilities<br>
   $ killdaemons.py $DAEMON_PIDS<br>
<br>
   $ cat error.log<br>
-  readline(65537) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(33\) GET /\?cmd=capabilities HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (35) accept: application/mercurial-0.1\r\n<br>
   readline(-1) -> (23) host: localhost:$HGPORT\r\n<br>
@@ -316,7 +316,7 @@ TODO this output is horrible<br>
   $ killdaemons.py $DAEMON_PIDS<br>
<br>
   $ cat error.log<br>
-  readline(65537) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(33\) GET /\?cmd=capabilities HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (35) accept: application/mercurial-0.1\r\n<br>
   readline(-1) -> (23) host: localhost:$HGPORT\r\n<br>
@@ -329,7 +329,7 @@ TODO this output is horrible<br>
   write(21 from 21) -> (537) Content-Length: 405\r\n<br>
   write(2 from 2) -> (535) \r\n<br>
   write(405 from 405) -> (130) lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,<wbr>revlogv1 bundle2=HG20%0Achangegroup%<wbr>3D01%2C02%0Adigests%3Dmd5%<wbr>2Csha1%2Csha512%0Aerror%<wbr>3Dabort%2Cunsupportedcontent%<wbr>2Cpushraced%2Cpushkey%<wbr>0Ahgtagsfnodes%0Alistkeys%<wbr>0Apushkey%0Aremote-<wbr>changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024 httpmediatype=0.1rx,0.1tx,0.<wbr>2tx compression=none<br>
-  readline(65537) -> (26) GET /?cmd=batch HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(26\) GET /\?cmd=batch HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n<br>
   readline(-1) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\<wbr>r\n<br>
@@ -359,7 +359,7 @@ TODO client spews a stack due to uncaugh<br>
   $ killdaemons.py $DAEMON_PIDS<br>
<br>
   $ cat error.log<br>
-  readline(65537) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(33\) GET /\?cmd=capabilities HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (35) accept: application/mercurial-0.1\r\n<br>
   readline(-1) -> (23) host: localhost:$HGPORT\r\n<br>
@@ -372,7 +372,7 @@ TODO client spews a stack due to uncaugh<br>
   write(21 from 21) -> (602) Content-Length: 405\r\n<br>
   write(2 from 2) -> (600) \r\n<br>
   write(405 from 405) -> (195) lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,<wbr>revlogv1 bundle2=HG20%0Achangegroup%<wbr>3D01%2C02%0Adigests%3Dmd5%<wbr>2Csha1%2Csha512%0Aerror%<wbr>3Dabort%2Cunsupportedcontent%<wbr>2Cpushraced%2Cpushkey%<wbr>0Ahgtagsfnodes%0Alistkeys%<wbr>0Apushkey%0Aremote-<wbr>changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024 httpmediatype=0.1rx,0.1tx,0.<wbr>2tx compression=none<br>
-  readline(65537) -> (26) GET /?cmd=batch HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(26\) GET /\?cmd=batch HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n<br>
   readline(-1) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\<wbr>r\n<br>
@@ -411,7 +411,7 @@ TODO this output is terrible<br>
   $ killdaemons.py $DAEMON_PIDS<br>
<br>
   $ cat error.log<br>
-  readline(65537) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(33\) GET /\?cmd=capabilities HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (35) accept: application/mercurial-0.1\r\n<br>
   readline(-1) -> (23) host: localhost:$HGPORT\r\n<br>
@@ -424,7 +424,7 @@ TODO this output is terrible<br>
   write(21 from 21) -> (737) Content-Length: 405\r\n<br>
   write(2 from 2) -> (735) \r\n<br>
   write(405 from 405) -> (330) lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,<wbr>revlogv1 bundle2=HG20%0Achangegroup%<wbr>3D01%2C02%0Adigests%3Dmd5%<wbr>2Csha1%2Csha512%0Aerror%<wbr>3Dabort%2Cunsupportedcontent%<wbr>2Cpushraced%2Cpushkey%<wbr>0Ahgtagsfnodes%0Alistkeys%<wbr>0Apushkey%0Aremote-<wbr>changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024 httpmediatype=0.1rx,0.1tx,0.<wbr>2tx compression=none<br>
-  readline(65537) -> (26) GET /?cmd=batch HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(26\) GET /\?cmd=batch HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n<br>
   readline(-1) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\<wbr>r\n<br>
@@ -440,7 +440,7 @@ TODO this output is terrible<br>
   write(20 from 20) -> (173) Content-Length: 42\r\n<br>
   write(2 from 2) -> (171) \r\n<br>
   write(42 from 42) -> (129) 96ee1d7354c4ad7372047672c36a1f<wbr>561e3a6a4c\n;<br>
-  readline(65537) -> (30) GET /?cmd=getbundle HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(30\) GET /\?cmd=getbundle HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n<br>
   readline(-1) -> (396) x-hgarg-1: bundlecaps=HG20%2Cbundle2%<wbr>3DHG20%250Achangegroup%253D01%<wbr>252C02%250Adigests%253Dmd5%<wbr>252Csha1%252Csha512%250Aerror%<wbr>253Dabort%<wbr>252Cunsupportedcontent%<wbr>252Cpushraced%252Cpushkey%<wbr>250Ahgtagsfnodes%250Alistkeys%<wbr>250Apushkey%250Aremote-<wbr>changegroup%253Dhttp%<wbr>252Chttps&cg=1&common=<wbr>000000000000000000000000000000<wbr>0000000000&heads=<wbr>96ee1d7354c4ad7372047672c36a1f<wbr>561e3a6a4c&listkeys=phases%<wbr>2Cbookmarks\r\n<br>
@@ -472,7 +472,7 @@ Server sends empty HTTP body for getbund<br>
   $ killdaemons.py $DAEMON_PIDS<br>
<br>
   $ cat error.log<br>
-  readline(65537) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(33\) GET /\?cmd=capabilities HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (35) accept: application/mercurial-0.1\r\n<br>
   readline(-1) -> (23) host: localhost:$HGPORT\r\n<br>
@@ -485,7 +485,7 @@ Server sends empty HTTP body for getbund<br>
   write(21 from 21) -> (775) Content-Length: 405\r\n<br>
   write(2 from 2) -> (773) \r\n<br>
   write(405 from 405) -> (368) lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,<wbr>revlogv1 bundle2=HG20%0Achangegroup%<wbr>3D01%2C02%0Adigests%3Dmd5%<wbr>2Csha1%2Csha512%0Aerror%<wbr>3Dabort%2Cunsupportedcontent%<wbr>2Cpushraced%2Cpushkey%<wbr>0Ahgtagsfnodes%0Alistkeys%<wbr>0Apushkey%0Aremote-<wbr>changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024 httpmediatype=0.1rx,0.1tx,0.<wbr>2tx compression=none<br>
-  readline(65537) -> (26) GET /?cmd=batch HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(26\) GET /\?cmd=batch HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n<br>
   readline(-1) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\<wbr>r\n<br>
@@ -501,7 +501,7 @@ Server sends empty HTTP body for getbund<br>
   write(20 from 20) -> (211) Content-Length: 42\r\n<br>
   write(2 from 2) -> (209) \r\n<br>
   write(42 from 42) -> (167) 96ee1d7354c4ad7372047672c36a1f<wbr>561e3a6a4c\n;<br>
-  readline(65537) -> (30) GET /?cmd=getbundle HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(30\) GET /\?cmd=getbundle HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n<br>
   readline(-1) -> (396) x-hgarg-1: bundlecaps=HG20%2Cbundle2%<wbr>3DHG20%250Achangegroup%253D01%<wbr>252C02%250Adigests%253Dmd5%<wbr>252Csha1%252Csha512%250Aerror%<wbr>253Dabort%<wbr>252Cunsupportedcontent%<wbr>252Cpushraced%252Cpushkey%<wbr>250Ahgtagsfnodes%250Alistkeys%<wbr>250Apushkey%250Aremote-<wbr>changegroup%253Dhttp%<wbr>252Chttps&cg=1&common=<wbr>000000000000000000000000000000<wbr>0000000000&heads=<wbr>96ee1d7354c4ad7372047672c36a1f<wbr>561e3a6a4c&listkeys=phases%<wbr>2Cbookmarks\r\n<br>
@@ -535,7 +535,7 @@ Server sends partial compression string<br>
   $ killdaemons.py $DAEMON_PIDS<br>
<br>
   $ cat error.log<br>
-  readline(65537) -> (33) GET /?cmd=capabilities HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(33\) GET /\?cmd=capabilities HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (35) accept: application/mercurial-0.1\r\n<br>
   readline(-1) -> (23) host: localhost:$HGPORT\r\n<br>
@@ -548,7 +548,7 @@ Server sends partial compression string<br>
   write(21 from 21) -> (787) Content-Length: 405\r\n<br>
   write(2 from 2) -> (785) \r\n<br>
   write(405 from 405) -> (380) lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,<wbr>revlogv1 bundle2=HG20%0Achangegroup%<wbr>3D01%2C02%0Adigests%3Dmd5%<wbr>2Csha1%2Csha512%0Aerror%<wbr>3Dabort%2Cunsupportedcontent%<wbr>2Cpushraced%2Cpushkey%<wbr>0Ahgtagsfnodes%0Alistkeys%<wbr>0Apushkey%0Aremote-<wbr>changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024 httpmediatype=0.1rx,0.1tx,0.<wbr>2tx compression=none<br>
-  readline(65537) -> (26) GET /?cmd=batch HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(26\) GET /\?cmd=batch HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n<br>
   readline(-1) -> (41) x-hgarg-1: cmds=heads+%3Bknown+nodes%3D\<wbr>r\n<br>
@@ -564,7 +564,7 @@ Server sends partial compression string<br>
   write(20 from 20) -> (223) Content-Length: 42\r\n<br>
   write(2 from 2) -> (221) \r\n<br>
   write(42 from 42) -> (179) 96ee1d7354c4ad7372047672c36a1f<wbr>561e3a6a4c\n;<br>
-  readline(65537) -> (30) GET /?cmd=getbundle HTTP/1.1\r\n<br>
+  readline\((-1|65537)\) -> \(30\) GET /\?cmd=getbundle HTTP/1.1\\r\\n (re)<br>
   readline(-1) -> (27) Accept-Encoding: identity\r\n<br>
   readline(-1) -> (29) vary: X-HgArg-1,X-HgProto-1\r\n<br>
   readline(-1) -> (396) x-hgarg-1: bundlecaps=HG20%2Cbundle2%<wbr>3DHG20%250Achangegroup%253D01%<wbr>252C02%250Adigests%253Dmd5%<wbr>252Csha1%252Csha512%250Aerror%<wbr>253Dabort%<wbr>252Cunsupportedcontent%<wbr>252Cpushraced%252Cpushkey%<wbr>250Ahgtagsfnodes%250Alistkeys%<wbr>250Apushkey%250Aremote-<wbr>changegroup%253Dhttp%<wbr>252Chttps&cg=1&common=<wbr>000000000000000000000000000000<wbr>0000000000&heads=<wbr>96ee1d7354c4ad7372047672c36a1f<wbr>561e3a6a4c&listkeys=phases%<wbr>2Cbookmarks\r\n<br>
______________________________<wbr>_________________<br>
Mercurial-devel mailing list<br>
<a href="mailto:Mercurial-devel@mercurial-scm.org">Mercurial-devel@mercurial-scm.<wbr>org</a><br>
<a href="https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel" rel="noreferrer" target="_blank">https://www.mercurial-scm.org/<wbr>mailman/listinfo/mercurial-<wbr>devel</a><br>
</blockquote></div><br></div></div>