##// END OF EJS Templates
wireprotov2: allow multiple fields to follow revision maps...
Gregory Szorc -
r39839:d059cb66 default
parent child Browse files
Show More
@@ -167,11 +167,16 b' def _processchangesetdata(repo, tr, objs'
167 167 # TODO add mechanism for extensions to examine records so they
168 168 # can siphon off custom data fields.
169 169
170 extrafields = {}
171
172 for field, size in cset.get(b'fieldsfollowing', []):
173 extrafields[field] = next(objs)
174
170 175 # Some entries might only be metadata only updates.
171 if b'revisionsize' not in cset:
176 if b'revision' not in extrafields:
172 177 continue
173 178
174 data = next(objs)
179 data = extrafields[b'revision']
175 180
176 181 yield (
177 182 node,
@@ -227,12 +232,17 b' def _fetchmanifests(repo, tr, remote, ma'
227 232 for manifest in objs:
228 233 node = manifest[b'node']
229 234
230 if b'deltasize' in manifest:
235 extrafields = {}
236
237 for field, size in manifest.get(b'fieldsfollowing', []):
238 extrafields[field] = next(objs)
239
240 if b'delta' in extrafields:
231 241 basenode = manifest[b'deltabasenode']
232 delta = next(objs)
233 elif b'revisionsize' in manifest:
242 delta = extrafields[b'delta']
243 elif b'revision' in extrafields:
234 244 basenode = nullid
235 revision = next(objs)
245 revision = extrafields[b'revision']
236 246 delta = mdiff.trivialdiffheader(len(revision)) + revision
237 247 else:
238 248 continue
@@ -331,12 +341,17 b' def _fetchfiles(repo, tr, remote, fnodes'
331 341 for filerevision in objs:
332 342 node = filerevision[b'node']
333 343
334 if b'deltasize' in filerevision:
344 extrafields = {}
345
346 for field, size in filerevision.get(b'fieldsfollowing', []):
347 extrafields[field] = next(objs)
348
349 if b'delta' in extrafields:
335 350 basenode = filerevision[b'deltabasenode']
336 delta = next(objs)
337 elif b'revisionsize' in filerevision:
351 delta = extrafields[b'delta']
352 elif b'revision' in extrafields:
338 353 basenode = nullid
339 revision = next(objs)
354 revision = extrafields[b'revision']
340 355 delta = mdiff.trivialdiffheader(len(revision)) + revision
341 356 else:
342 357 continue
@@ -161,11 +161,17 b' totalitems'
161 161
162 162 Following the map header is a series of 0 or more CBOR values. If values
163 163 are present, the first value will always be a map describing a single changeset
164 revision. If revision data is requested, the raw revision data (encoded as
165 a CBOR bytestring) will follow the map describing it. Otherwise, another CBOR
166 map describing the next changeset revision will occur.
164 revision.
167 165
168 Each map has the following bytestring keys:
166 If the ``fieldsfollowing`` key is present, the map will immediately be followed
167 by N CBOR bytestring values, where N is the number of elements in
168 ``fieldsfollowing``. Each bytestring value corresponds to a field denoted
169 by ``fieldsfollowing``.
170
171 Following the optional bytestring field values is the next revision descriptor
172 map, or end of stream.
173
174 Each revision descriptor map has the following bytestring keys:
169 175
170 176 node
171 177 (bytestring) The node value for this revision. This is the SHA-1 hash of
@@ -176,6 +182,22 b' bookmarks (optional)'
176 182 if ``bookmarks`` data is being requested and the revision has bookmarks
177 183 attached.
178 184
185 fieldsfollowing (optional)
186 (array of 2-array) Denotes what fields immediately follow this map. Each
187 value is an array with 2 elements: the bytestring field name and an unsigned
188 integer describing the length of the data, in bytes.
189
190 If this key isn't present, no special fields will follow this map.
191
192 The following fields may be present:
193
194 revision
195 Raw, revision data for the changelog entry. Contains a serialized form
196 of the changeset data, including the author, date, commit message, set
197 of changed files, manifest node, and other metadata.
198
199 Only present if the ``revision`` field was requested.
200
179 201 parents (optional)
180 202 (array of bytestrings) The nodes representing the parent revisions of this
181 203 revision. Only present if ``parents`` data is being requested.
@@ -185,15 +207,6 b' phase (optional)'
185 207 ``secret``, ``draft``, and ``public``. Only present if ``phase`` data
186 208 is being requested.
187 209
188 revisionsize (optional)
189 (unsigned integer) Indicates the size of raw revision data that follows this
190 map. The following data contains a serialized form of the changeset data,
191 including the author, date, commit message, set of changed files, manifest
192 node, and other metadata.
193
194 Only present if ``revision`` data was requested and the data follows this
195 map.
196
197 210 If nodes are requested via ``noderange``, they will be emitted in DAG order,
198 211 parents always before children.
199 212
@@ -261,11 +274,19 b' totalitems'
261 274 (unsigned integer) Total number of file revisions whose data is
262 275 being returned.
263 276
264 Following the header map is a series of 0 or more CBOR values. The first
265 value is always a map describing a file revision. If this map has the
266 ``deltasize`` or ``revisionsize`` keys, a bytestring containing the delta
267 or revision, respectively, will immediately follow the map. Otherwise
268 the next value will be a map describing the next file revision.
277 Following the map header is a series of 0 or more CBOR values. If values
278 are present, the first value will always be a map describing a single changeset
279 revision.
280
281 If the ``fieldsfollowing`` key is present, the map will immediately be followed
282 by N CBOR bytestring values, where N is the number of elements in
283 ``fieldsfollowing``. Each bytestring value corresponds to a field denoted
284 by ``fieldsfollowing``.
285
286 Following the optional bytestring field values is the next revision descriptor
287 map, or end of stream.
288
289 Each revision descriptor map has the following bytestring keys:
269 290
270 291 Each map has the following bytestring keys:
271 292
@@ -278,28 +299,32 b' deltabasenode'
278 299 Only present if the ``revision`` field is requested and delta data
279 300 follows this map.
280 301
281 deltasize
282 (unsigned integer) The size of the delta data that follows this map.
302 fieldsfollowing
303 (array of 2-array) Denotes extra bytestring fields that following this map.
304 See the documentation for ``changesetdata`` for semantics.
305
306 The following named fields may be present:
283 307
284 Only present if the ``revision`` field is requested and delta data
285 follows this map.
308 ``delta``
309 The delta data to use to construct the fulltext revision.
310
311 Only present if the ``revision`` field is requested and a delta is
312 being emitted. The ``deltabasenode`` top-level key will also be
313 present if this field is being emitted.
314
315 ``revision``
316 The fulltext revision data for this manifest. Only present if the
317 ``revision`` field is requested and a fulltext revision is being emitted.
286 318
287 319 parents
288 320 (array of bytestring) The nodes of the parents of this file revision.
289 321
290 322 Only present if the ``parents`` field is requested.
291 323
292 revisionsize
293 (unsigned integer) The size of the fulltext revision data that follows
294 this map.
295
296 Only present if the ``revision`` field is requested and fulltext revision
297 data follows this map.
298
299 324 When ``revision`` data is requested, the server chooses to emit either fulltext
300 325 revision data or a delta. What the server decides can be inferred by looking
301 for the presence of the ``deltasize`` or ``revisionsize`` keys in the map.
302 Servers MUST NOT define both keys.
326 for the presence of the ``delta`` or ``revision`` keys in the
327 ``fieldsfollowing`` array.
303 328
304 329 heads
305 330 -----
@@ -409,13 +434,19 b' totalitems'
409 434 (unsigned integer) Total number of manifest revisions whose data is
410 435 being returned.
411 436
412 Following the header map is a series of 0 or more CBOR values. The first
413 value is always a map describing a manifest revision. If this map has the
414 ``deltasize`` or ``revisionsize`` keys, a bytestring containing the delta
415 or revision, respectively, will immediately follow the map. Otherwise
416 the next value will be a map describing the next manifest revision.
437 Following the map header is a series of 0 or more CBOR values. If values
438 are present, the first value will always be a map describing a single manifest
439 revision.
417 440
418 Each map has the following bytestring keys:
441 If the ``fieldsfollowing`` key is present, the map will immediately be followed
442 by N CBOR bytestring values, where N is the number of elements in
443 ``fieldsfollowing``. Each bytestring value corresponds to a field denoted
444 by ``fieldsfollowing``.
445
446 Following the optional bytestring field values is the next revision descriptor
447 map, or end of stream.
448
449 Each revision descriptor map has the following bytestring keys:
419 450
420 451 node
421 452 (bytestring) The node of the manifest revision whose data is represented.
@@ -425,24 +456,30 b' deltabasenode'
425 456 computed against. Only present if the ``revision`` field is requested and
426 457 a delta is being emitted.
427 458
428 deltasize
429 (unsigned integer) The size of the delta data that follows this map.
430 Only present if the ``revision`` field is requested and a delta is
431 being emitted.
459 fieldsfollowing
460 (array of 2-array) Denotes extra bytestring fields that following this map.
461 See the documentation for ``changesetdata`` for semantics.
462
463 The following named fields may be present:
464
465 ``delta``
466 The delta data to use to construct the fulltext revision.
467
468 Only present if the ``revision`` field is requested and a delta is
469 being emitted. The ``deltabasenode`` top-level key will also be
470 present if this field is being emitted.
471
472 ``revision``
473 The fulltext revision data for this manifest. Only present if the
474 ``revision`` field is requested and a fulltext revision is being emitted.
432 475
433 476 parents
434 477 (array of bytestring) The nodes of the parents of this manifest revision.
435 478 Only present if the ``parents`` field is requested.
436 479
437 revisionsize
438 (unsigned integer) The size of the fulltext revision data that follows
439 this map. Only present if the ``revision`` field is requested and a fulltext
440 revision is being emitted.
441
442 480 When ``revision`` data is requested, the server chooses to emit either fulltext
443 481 revision data or a delta. What the server decides can be inferred by looking
444 for the presence of the ``deltasize`` or ``revisionsize`` keys in the map.
445 Servers MUST NOT define both keys.
482 for the presence of ``delta`` or ``revision`` in the ``fieldsfollowing`` array.
446 483
447 484 pushkey
448 485 -------
@@ -22,8 +22,8 b' from .utils import ('
22 22 SSHV1 = 'ssh-v1'
23 23 # These are advertised over the wire. Increment the counters at the end
24 24 # to reflect BC breakages.
25 SSHV2 = 'exp-ssh-v2-0001'
26 HTTP_WIREPROTO_V2 = 'exp-http-v2-0001'
25 SSHV2 = 'exp-ssh-v2-0002'
26 HTTP_WIREPROTO_V2 = 'exp-http-v2-0002'
27 27
28 28 # All available wire protocol transports.
29 29 TRANSPORTS = {
@@ -752,19 +752,24 b' def changesetdata(repo, proto, noderange'
752 752 d[b'bookmarks'] = sorted(nodebookmarks[node])
753 753 del nodebookmarks[node]
754 754
755 revisiondata = None
755 followingmeta = []
756 followingdata = []
756 757
757 758 if b'revision' in fields:
758 759 revisiondata = cl.revision(node, raw=True)
759 d[b'revisionsize'] = len(revisiondata)
760 followingmeta.append((b'revision', len(revisiondata)))
761 followingdata.append(revisiondata)
760 762
761 763 # TODO make it possible for extensions to wrap a function or register
762 764 # a handler to service custom fields.
763 765
766 if followingmeta:
767 d[b'fieldsfollowing'] = followingmeta
768
764 769 yield d
765 770
766 if revisiondata is not None:
767 yield revisiondata
771 for extra in followingdata:
772 yield extra
768 773
769 774 # If requested, send bookmarks from nodes that didn't have revision
770 775 # data sent so receiver is aware of any bookmark updates.
@@ -865,25 +870,29 b' def filedata(repo, proto, haveparents, n'
865 870 if b'parents' in fields:
866 871 d[b'parents'] = store.parents(node)
867 872
873 followingmeta = []
874 followingdata = []
875
868 876 if b'revision' in fields:
869 877 assert delta is not None
870 878 assert delta.flags == 0
871 879 assert d[b'node'] == delta.node
872 880
873 881 if delta.revision is not None:
874 revisiondata = delta.revision
875 d[b'revisionsize'] = len(revisiondata)
882 followingmeta.append((b'revision', len(delta.revision)))
883 followingdata.append(delta.revision)
876 884 else:
877 885 d[b'deltabasenode'] = delta.basenode
878 revisiondata = delta.delta
879 d[b'deltasize'] = len(revisiondata)
880 else:
881 revisiondata = None
886 followingmeta.append((b'delta', len(delta.delta)))
887 followingdata.append(delta.delta)
888
889 if followingmeta:
890 d[b'fieldsfollowing'] = followingmeta
882 891
883 892 yield d
884 893
885 if revisiondata is not None:
886 yield revisiondata
894 for extra in followingdata:
895 yield extra
887 896
888 897 if deltas is not None:
889 898 try:
@@ -1020,25 +1029,29 b' def manifestdata(repo, proto, haveparent'
1020 1029 if b'parents' in fields:
1021 1030 d[b'parents'] = store.parents(node)
1022 1031
1032 followingmeta = []
1033 followingdata = []
1034
1023 1035 if b'revision' in fields:
1024 1036 assert delta is not None
1025 1037 assert delta.flags == 0
1026 1038 assert d[b'node'] == delta.node
1027 1039
1028 1040 if delta.revision is not None:
1029 revisiondata = delta.revision
1030 d[b'revisionsize'] = len(revisiondata)
1041 followingmeta.append((b'revision', len(delta.revision)))
1042 followingdata.append(delta.revision)
1031 1043 else:
1032 1044 d[b'deltabasenode'] = delta.basenode
1033 revisiondata = delta.delta
1034 d[b'deltasize'] = len(revisiondata)
1035 else:
1036 revisiondata = None
1045 followingmeta.append((b'delta', len(delta.delta)))
1046 followingdata.append(delta.delta)
1047
1048 if followingmeta:
1049 d[b'fieldsfollowing'] = followingmeta
1037 1050
1038 1051 yield d
1039 1052
1040 if revisiondata is not None:
1041 yield revisiondata
1053 for extra in followingdata:
1054 yield extra
1042 1055
1043 1056 if deltas is not None:
1044 1057 try:
@@ -1177,14 +1177,14 b' SEC: check for unsafe ssh url'
1177 1177 #if windows
1178 1178 $ hg clone "ssh://%26touch%20owned%20/" --debug
1179 1179 running sh -c "read l; read l; read l" "&touch owned " "hg -R . serve --stdio"
1180 sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
1180 sending upgrade request: * proto=exp-ssh-v2-0002 (glob) (sshv2 !)
1181 1181 sending hello command
1182 1182 sending between command
1183 1183 abort: no suitable response from remote hg!
1184 1184 [255]
1185 1185 $ hg clone "ssh://example.com:%26touch%20owned%20/" --debug
1186 1186 running sh -c "read l; read l; read l" -p "&touch owned " example.com "hg -R . serve --stdio"
1187 sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
1187 sending upgrade request: * proto=exp-ssh-v2-0002 (glob) (sshv2 !)
1188 1188 sending hello command
1189 1189 sending between command
1190 1190 abort: no suitable response from remote hg!
@@ -1192,14 +1192,14 b' SEC: check for unsafe ssh url'
1192 1192 #else
1193 1193 $ hg clone "ssh://%3btouch%20owned%20/" --debug
1194 1194 running sh -c "read l; read l; read l" ';touch owned ' 'hg -R . serve --stdio'
1195 sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
1195 sending upgrade request: * proto=exp-ssh-v2-0002 (glob) (sshv2 !)
1196 1196 sending hello command
1197 1197 sending between command
1198 1198 abort: no suitable response from remote hg!
1199 1199 [255]
1200 1200 $ hg clone "ssh://example.com:%3btouch%20owned%20/" --debug
1201 1201 running sh -c "read l; read l; read l" -p ';touch owned ' example.com 'hg -R . serve --stdio'
1202 sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
1202 sending upgrade request: * proto=exp-ssh-v2-0002 (glob) (sshv2 !)
1203 1203 sending hello command
1204 1204 sending between command
1205 1205 abort: no suitable response from remote hg!
@@ -1208,7 +1208,7 b' SEC: check for unsafe ssh url'
1208 1208
1209 1209 $ hg clone "ssh://v-alid.example.com/" --debug
1210 1210 running sh -c "read l; read l; read l" v-alid\.example\.com ['"]hg -R \. serve --stdio['"] (re)
1211 sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
1211 sending upgrade request: * proto=exp-ssh-v2-0002 (glob) (sshv2 !)
1212 1212 sending hello command
1213 1213 sending between command
1214 1214 abort: no suitable response from remote hg!
@@ -18,7 +18,7 b' HTTP v2 protocol not enabled by default'
18 18 > user-agent: test
19 19 > EOF
20 20 using raw connection to peer
21 s> GET /api/exp-http-v2-0001 HTTP/1.1\r\n
21 s> GET /api/exp-http-v2-0002 HTTP/1.1\r\n
22 22 s> Accept-Encoding: identity\r\n
23 23 s> user-agent: test\r\n
24 24 s> host: $LOCALIP:$HGPORT\r\n (glob)
@@ -30,7 +30,7 b' HTTP v2 protocol not enabled by default'
30 30 s> Content-Type: text/plain\r\n
31 31 s> Content-Length: 33\r\n
32 32 s> \r\n
33 s> API exp-http-v2-0001 not enabled\n
33 s> API exp-http-v2-0002 not enabled\n
34 34
35 35 Restart server with support for HTTP v2 API
36 36
@@ -46,7 +46,7 b' Request to unknown command yields 404'
46 46 > user-agent: test
47 47 > EOF
48 48 using raw connection to peer
49 s> POST /api/exp-http-v2-0001/ro/badcommand HTTP/1.1\r\n
49 s> POST /api/exp-http-v2-0002/ro/badcommand HTTP/1.1\r\n
50 50 s> Accept-Encoding: identity\r\n
51 51 s> user-agent: test\r\n
52 52 s> host: $LOCALIP:$HGPORT\r\n (glob)
@@ -67,7 +67,7 b' GET to read-only command yields a 405'
67 67 > user-agent: test
68 68 > EOF
69 69 using raw connection to peer
70 s> GET /api/exp-http-v2-0001/ro/customreadonly HTTP/1.1\r\n
70 s> GET /api/exp-http-v2-0002/ro/customreadonly HTTP/1.1\r\n
71 71 s> Accept-Encoding: identity\r\n
72 72 s> user-agent: test\r\n
73 73 s> host: $LOCALIP:$HGPORT\r\n (glob)
@@ -88,7 +88,7 b' Missing Accept header results in 406'
88 88 > user-agent: test
89 89 > EOF
90 90 using raw connection to peer
91 s> POST /api/exp-http-v2-0001/ro/customreadonly HTTP/1.1\r\n
91 s> POST /api/exp-http-v2-0002/ro/customreadonly HTTP/1.1\r\n
92 92 s> Accept-Encoding: identity\r\n
93 93 s> user-agent: test\r\n
94 94 s> host: $LOCALIP:$HGPORT\r\n (glob)
@@ -110,7 +110,7 b' Bad Accept header results in 406'
110 110 > user-agent: test
111 111 > EOF
112 112 using raw connection to peer
113 s> POST /api/exp-http-v2-0001/ro/customreadonly HTTP/1.1\r\n
113 s> POST /api/exp-http-v2-0002/ro/customreadonly HTTP/1.1\r\n
114 114 s> Accept-Encoding: identity\r\n
115 115 s> accept: invalid\r\n
116 116 s> user-agent: test\r\n
@@ -134,7 +134,7 b' Bad Content-Type header results in 415'
134 134 > content-type: badmedia
135 135 > EOF
136 136 using raw connection to peer
137 s> POST /api/exp-http-v2-0001/ro/customreadonly HTTP/1.1\r\n
137 s> POST /api/exp-http-v2-0002/ro/customreadonly HTTP/1.1\r\n
138 138 s> Accept-Encoding: identity\r\n
139 139 s> accept: application/mercurial-exp-framing-0005\r\n
140 140 s> content-type: badmedia\r\n
@@ -160,7 +160,7 b' Request to read-only command works out o'
160 160 > frame 1 1 stream-begin command-request new cbor:{b'name': b'customreadonly'}
161 161 > EOF
162 162 using raw connection to peer
163 s> POST /api/exp-http-v2-0001/ro/customreadonly HTTP/1.1\r\n
163 s> POST /api/exp-http-v2-0002/ro/customreadonly HTTP/1.1\r\n
164 164 s> Accept-Encoding: identity\r\n
165 165 s> *\r\n (glob)
166 166 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -193,7 +193,7 b' Request to read-only command works out o'
193 193 > EOF
194 194 creating http peer for wire protocol version 2
195 195 sending customreadonly command
196 s> POST /api/exp-http-v2-0001/ro/customreadonly HTTP/1.1\r\n
196 s> POST /api/exp-http-v2-0002/ro/customreadonly HTTP/1.1\r\n
197 197 s> Accept-Encoding: identity\r\n
198 198 s> accept: application/mercurial-exp-framing-0005\r\n
199 199 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -238,7 +238,7 b' GET to read-write request yields 405'
238 238 > user-agent: test
239 239 > EOF
240 240 using raw connection to peer
241 s> GET /api/exp-http-v2-0001/rw/customreadonly HTTP/1.1\r\n
241 s> GET /api/exp-http-v2-0002/rw/customreadonly HTTP/1.1\r\n
242 242 s> Accept-Encoding: identity\r\n
243 243 s> user-agent: test\r\n
244 244 s> host: $LOCALIP:$HGPORT\r\n (glob)
@@ -259,7 +259,7 b' Even for unknown commands'
259 259 > user-agent: test
260 260 > EOF
261 261 using raw connection to peer
262 s> GET /api/exp-http-v2-0001/rw/badcommand HTTP/1.1\r\n
262 s> GET /api/exp-http-v2-0002/rw/badcommand HTTP/1.1\r\n
263 263 s> Accept-Encoding: identity\r\n
264 264 s> user-agent: test\r\n
265 265 s> host: $LOCALIP:$HGPORT\r\n (glob)
@@ -280,7 +280,7 b' SSL required by default'
280 280 > user-agent: test
281 281 > EOF
282 282 using raw connection to peer
283 s> POST /api/exp-http-v2-0001/rw/customreadonly HTTP/1.1\r\n
283 s> POST /api/exp-http-v2-0002/rw/customreadonly HTTP/1.1\r\n
284 284 s> Accept-Encoding: identity\r\n
285 285 s> user-agent: test\r\n
286 286 s> host: $LOCALIP:$HGPORT\r\n (glob)
@@ -318,7 +318,7 b' Authorized request for valid read-write '
318 318 > frame 1 1 stream-begin command-request new cbor:{b'name': b'customreadonly'}
319 319 > EOF
320 320 using raw connection to peer
321 s> POST /api/exp-http-v2-0001/rw/customreadonly HTTP/1.1\r\n
321 s> POST /api/exp-http-v2-0002/rw/customreadonly HTTP/1.1\r\n
322 322 s> Accept-Encoding: identity\r\n
323 323 s> accept: application/mercurial-exp-framing-0005\r\n
324 324 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -354,7 +354,7 b' Authorized request for unknown command i'
354 354 > accept: $MEDIATYPE
355 355 > EOF
356 356 using raw connection to peer
357 s> POST /api/exp-http-v2-0001/rw/badcommand HTTP/1.1\r\n
357 s> POST /api/exp-http-v2-0002/rw/badcommand HTTP/1.1\r\n
358 358 s> Accept-Encoding: identity\r\n
359 359 s> accept: application/mercurial-exp-framing-0005\r\n
360 360 s> user-agent: test\r\n
@@ -376,7 +376,7 b" debugreflect isn't enabled by default"
376 376 > user-agent: test
377 377 > EOF
378 378 using raw connection to peer
379 s> POST /api/exp-http-v2-0001/ro/debugreflect HTTP/1.1\r\n
379 s> POST /api/exp-http-v2-0002/ro/debugreflect HTTP/1.1\r\n
380 380 s> Accept-Encoding: identity\r\n
381 381 s> user-agent: test\r\n
382 382 s> host: $LOCALIP:$HGPORT\r\n (glob)
@@ -416,7 +416,7 b' Command frames can be reflected via debu'
416 416 > frame 1 1 stream-begin command-request new cbor:{b'name': b'command1', b'args': {b'foo': b'val1', b'bar1': b'val'}}
417 417 > EOF
418 418 using raw connection to peer
419 s> POST /api/exp-http-v2-0001/ro/debugreflect HTTP/1.1\r\n
419 s> POST /api/exp-http-v2-0002/ro/debugreflect HTTP/1.1\r\n
420 420 s> Accept-Encoding: identity\r\n
421 421 s> accept: application/mercurial-exp-framing-0005\r\n
422 422 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -447,7 +447,7 b' Multiple requests to regular command URL'
447 447 > frame 1 1 stream-begin command-request new cbor:{b'name': b'customreadonly'}
448 448 > EOF
449 449 using raw connection to peer
450 s> POST /api/exp-http-v2-0001/ro/customreadonly HTTP/1.1\r\n
450 s> POST /api/exp-http-v2-0002/ro/customreadonly HTTP/1.1\r\n
451 451 s> Accept-Encoding: identity\r\n
452 452 s> accept: application/mercurial-exp-framing-0005\r\n
453 453 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -486,7 +486,7 b' Multiple requests to "multirequest" URL '
486 486 > frame 3 1 0 command-request new cbor:{b'name': b'customreadonly'}
487 487 > EOF
488 488 using raw connection to peer
489 s> POST /api/exp-http-v2-0001/ro/multirequest HTTP/1.1\r\n
489 s> POST /api/exp-http-v2-0002/ro/multirequest HTTP/1.1\r\n
490 490 s> Accept-Encoding: identity\r\n
491 491 s> *\r\n (glob)
492 492 s> *\r\n (glob)
@@ -536,7 +536,7 b' Interleaved requests to "multirequest" a'
536 536 > frame 1 1 0 command-request continuation IbookmarksDnameHlistkeys
537 537 > EOF
538 538 using raw connection to peer
539 s> POST /api/exp-http-v2-0001/ro/multirequest HTTP/1.1\r\n
539 s> POST /api/exp-http-v2-0002/ro/multirequest HTTP/1.1\r\n
540 540 s> Accept-Encoding: identity\r\n
541 541 s> accept: application/mercurial-exp-framing-0005\r\n
542 542 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -598,7 +598,7 b' Attempting to run a read-write command v'
598 598 > frame 1 1 stream-begin command-request new cbor:{b'name': b'pushkey'}
599 599 > EOF
600 600 using raw connection to peer
601 s> POST /api/exp-http-v2-0001/ro/multirequest HTTP/1.1\r\n
601 s> POST /api/exp-http-v2-0002/ro/multirequest HTTP/1.1\r\n
602 602 s> Accept-Encoding: identity\r\n
603 603 s> accept: application/mercurial-exp-framing-0005\r\n
604 604 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -218,11 +218,11 b' Accessing an unknown API yields a 404'
218 218 Accessing a known but not enabled API yields a different error
219 219
220 220 $ send << EOF
221 > httprequest GET api/exp-http-v2-0001
221 > httprequest GET api/exp-http-v2-0002
222 222 > user-agent: test
223 223 > EOF
224 224 using raw connection to peer
225 s> GET /api/exp-http-v2-0001 HTTP/1.1\r\n
225 s> GET /api/exp-http-v2-0002 HTTP/1.1\r\n
226 226 s> Accept-Encoding: identity\r\n
227 227 s> user-agent: test\r\n
228 228 s> host: $LOCALIP:$HGPORT\r\n (glob)
@@ -234,7 +234,7 b' Accessing a known but not enabled API yi'
234 234 s> Content-Type: text/plain\r\n
235 235 s> Content-Length: 33\r\n
236 236 s> \r\n
237 s> API exp-http-v2-0001 not enabled\n
237 s> API exp-http-v2-0002 not enabled\n
238 238
239 239 Restart server with support for HTTP v2 API
240 240
@@ -269,7 +269,7 b' Restart server with support for HTTP v2 '
269 269 s> \r\n
270 270 s> APIs can be accessed at /api/<name>, where <name> can be one of the following:\n
271 271 s> \n
272 s> exp-http-v2-0001
272 s> exp-http-v2-0002
273 273
274 274 $ send << EOF
275 275 > httprequest GET api/
@@ -290,4 +290,4 b' Restart server with support for HTTP v2 '
290 290 s> \r\n
291 291 s> APIs can be accessed at /api/<name>, where <name> can be one of the following:\n
292 292 s> \n
293 s> exp-http-v2-0001
293 s> exp-http-v2-0002
@@ -253,7 +253,7 b' Client with HTTPv2 enabled advertises th'
253 253 s> Accept-Encoding: identity\r\n
254 254 s> vary: X-HgProto-1,X-HgUpgrade-1\r\n
255 255 s> x-hgproto-1: cbor\r\n
256 s> x-hgupgrade-1: exp-http-v2-0001\r\n
256 s> x-hgupgrade-1: exp-http-v2-0002\r\n
257 257 s> accept: application/mercurial-0.1\r\n
258 258 s> host: $LOCALIP:$HGPORT\r\n (glob)
259 259 s> user-agent: Mercurial debugwireproto\r\n
@@ -301,7 +301,7 b' Client with HTTPv2 enabled automatically'
301 301 s> Accept-Encoding: identity\r\n
302 302 s> vary: X-HgProto-1,X-HgUpgrade-1\r\n
303 303 s> x-hgproto-1: cbor\r\n
304 s> x-hgupgrade-1: exp-http-v2-0001\r\n
304 s> x-hgupgrade-1: exp-http-v2-0002\r\n
305 305 s> accept: application/mercurial-0.1\r\n
306 306 s> host: $LOCALIP:$HGPORT\r\n (glob)
307 307 s> user-agent: Mercurial debugwireproto\r\n
@@ -313,9 +313,9 b' Client with HTTPv2 enabled automatically'
313 313 s> Content-Type: application/mercurial-cbor\r\n
314 314 s> Content-Length: *\r\n (glob)
315 315 s> \r\n
316 s> \xa3GapibaseDapi/Dapis\xa1Pexp-http-v2-0001\xa5Hcommands\xaaIbranchmap\xa2Dargs\xa0Kpermissions\x81DpullLcapabilities\xa2Dargs\xa0Kpermissions\x81DpullMchangesetdata\xa2Dargs\xa3Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x84IbookmarksGparentsEphaseHrevisionInoderange\xa3Gdefault\xf6Hrequired\xf4DtypeDlistEnodes\xa3Gdefault\xf6Hrequired\xf4DtypeDlistKpermissions\x81DpullHfiledata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDpath\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullEheads\xa2Dargs\xa1Jpubliconly\xa3Gdefault\xf4Hrequired\xf4DtypeDboolKpermissions\x81DpullEknown\xa2Dargs\xa1Enodes\xa3Gdefault\x80Hrequired\xf4DtypeDlistKpermissions\x81DpullHlistkeys\xa2Dargs\xa1Inamespace\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullFlookup\xa2Dargs\xa1Ckey\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullLmanifestdata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDtree\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullGpushkey\xa2Dargs\xa4Ckey\xa2Hrequired\xf5DtypeEbytesInamespace\xa2Hrequired\xf5DtypeEbytesCnew\xa2Hrequired\xf5DtypeEbytesCold\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpushKcompression\x81\xa1DnameDzlibQframingmediatypes\x81X&application/mercurial-exp-framing-0005Rpathfilterprefixes\xd9\x01\x02\x82Epath:Lrootfilesin:Nrawrepoformats\x82LgeneraldeltaHrevlogv1Nv1capabilitiesY\x01\xd3batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset compression=$BUNDLE2_COMPRESSIONS$ getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
316 s> \xa3GapibaseDapi/Dapis\xa1Pexp-http-v2-0002\xa5Hcommands\xaaIbranchmap\xa2Dargs\xa0Kpermissions\x81DpullLcapabilities\xa2Dargs\xa0Kpermissions\x81DpullMchangesetdata\xa2Dargs\xa3Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x84IbookmarksGparentsEphaseHrevisionInoderange\xa3Gdefault\xf6Hrequired\xf4DtypeDlistEnodes\xa3Gdefault\xf6Hrequired\xf4DtypeDlistKpermissions\x81DpullHfiledata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDpath\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullEheads\xa2Dargs\xa1Jpubliconly\xa3Gdefault\xf4Hrequired\xf4DtypeDboolKpermissions\x81DpullEknown\xa2Dargs\xa1Enodes\xa3Gdefault\x80Hrequired\xf4DtypeDlistKpermissions\x81DpullHlistkeys\xa2Dargs\xa1Inamespace\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullFlookup\xa2Dargs\xa1Ckey\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullLmanifestdata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDtree\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullGpushkey\xa2Dargs\xa4Ckey\xa2Hrequired\xf5DtypeEbytesInamespace\xa2Hrequired\xf5DtypeEbytesCnew\xa2Hrequired\xf5DtypeEbytesCold\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpushKcompression\x81\xa1DnameDzlibQframingmediatypes\x81X&application/mercurial-exp-framing-0005Rpathfilterprefixes\xd9\x01\x02\x82Epath:Lrootfilesin:Nrawrepoformats\x82LgeneraldeltaHrevlogv1Nv1capabilitiesY\x01\xd3batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset compression=$BUNDLE2_COMPRESSIONS$ getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
317 317 sending heads command
318 s> POST /api/exp-http-v2-0001/ro/heads HTTP/1.1\r\n
318 s> POST /api/exp-http-v2-0002/ro/heads HTTP/1.1\r\n
319 319 s> Accept-Encoding: identity\r\n
320 320 s> accept: application/mercurial-exp-framing-0005\r\n
321 321 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -479,11 +479,11 b' debug output'
479 479 $ hg pull --debug ssh://user@dummy/remote
480 480 pulling from ssh://user@dummy/remote
481 481 running .* ".*/dummyssh" ['"]user@dummy['"] ('|")hg -R remote serve --stdio('|") (re)
482 sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
482 sending upgrade request: * proto=exp-ssh-v2-0002 (glob) (sshv2 !)
483 483 sending hello command
484 484 sending between command
485 485 remote: 427 (sshv1 !)
486 protocol upgraded to exp-ssh-v2-0001 (sshv2 !)
486 protocol upgraded to exp-ssh-v2-0002 (sshv2 !)
487 487 remote: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
488 488 remote: 1 (sshv1 !)
489 489 sending protocaps command
@@ -100,14 +100,14 b' Test pushing bundle1 payload to a server'
100 100 testing ssh2
101 101 creating ssh peer from handshake results
102 102 i> write(171) -> 171:
103 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
103 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
104 104 i> hello\n
105 105 i> between\n
106 106 i> pairs 81\n
107 107 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
108 108 i> flush() -> None
109 109 o> readline() -> 62:
110 o> upgraded * exp-ssh-v2-0001\n (glob)
110 o> upgraded * exp-ssh-v2-0002\n (glob)
111 111 o> readline() -> 4:
112 112 o> 426\n
113 113 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -285,14 +285,14 b' ui.write() in hook is redirected to stde'
285 285 testing ssh2
286 286 creating ssh peer from handshake results
287 287 i> write(171) -> 171:
288 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
288 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
289 289 i> hello\n
290 290 i> between\n
291 291 i> pairs 81\n
292 292 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
293 293 i> flush() -> None
294 294 o> readline() -> 62:
295 o> upgraded * exp-ssh-v2-0001\n (glob)
295 o> upgraded * exp-ssh-v2-0002\n (glob)
296 296 o> readline() -> 4:
297 297 o> 426\n
298 298 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -412,14 +412,14 b' And a variation that writes multiple lin'
412 412 testing ssh2
413 413 creating ssh peer from handshake results
414 414 i> write(171) -> 171:
415 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
415 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
416 416 i> hello\n
417 417 i> between\n
418 418 i> pairs 81\n
419 419 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
420 420 i> flush() -> None
421 421 o> readline() -> 62:
422 o> upgraded * exp-ssh-v2-0001\n (glob)
422 o> upgraded * exp-ssh-v2-0002\n (glob)
423 423 o> readline() -> 4:
424 424 o> 426\n
425 425 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -539,14 +539,14 b' And a variation that does a ui.flush() a'
539 539 testing ssh2
540 540 creating ssh peer from handshake results
541 541 i> write(171) -> 171:
542 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
542 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
543 543 i> hello\n
544 544 i> between\n
545 545 i> pairs 81\n
546 546 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
547 547 i> flush() -> None
548 548 o> readline() -> 62:
549 o> upgraded * exp-ssh-v2-0001\n (glob)
549 o> upgraded * exp-ssh-v2-0002\n (glob)
550 550 o> readline() -> 4:
551 551 o> 426\n
552 552 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -666,14 +666,14 b' Multiple writes + flush'
666 666 testing ssh2
667 667 creating ssh peer from handshake results
668 668 i> write(171) -> 171:
669 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
669 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
670 670 i> hello\n
671 671 i> between\n
672 672 i> pairs 81\n
673 673 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
674 674 i> flush() -> None
675 675 o> readline() -> 62:
676 o> upgraded * exp-ssh-v2-0001\n (glob)
676 o> upgraded * exp-ssh-v2-0002\n (glob)
677 677 o> readline() -> 4:
678 678 o> 426\n
679 679 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -796,14 +796,14 b' ui.write() + ui.write_err() output is ca'
796 796 testing ssh2
797 797 creating ssh peer from handshake results
798 798 i> write(171) -> 171:
799 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
799 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
800 800 i> hello\n
801 801 i> between\n
802 802 i> pairs 81\n
803 803 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
804 804 i> flush() -> None
805 805 o> readline() -> 62:
806 o> upgraded * exp-ssh-v2-0001\n (glob)
806 o> upgraded * exp-ssh-v2-0002\n (glob)
807 807 o> readline() -> 4:
808 808 o> 426\n
809 809 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -925,14 +925,14 b' print() output is captured'
925 925 testing ssh2
926 926 creating ssh peer from handshake results
927 927 i> write(171) -> 171:
928 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
928 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
929 929 i> hello\n
930 930 i> between\n
931 931 i> pairs 81\n
932 932 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
933 933 i> flush() -> None
934 934 o> readline() -> 62:
935 o> upgraded * exp-ssh-v2-0001\n (glob)
935 o> upgraded * exp-ssh-v2-0002\n (glob)
936 936 o> readline() -> 4:
937 937 o> 426\n
938 938 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1054,14 +1054,14 b' Mixed print() and ui.write() are both ca'
1054 1054 testing ssh2
1055 1055 creating ssh peer from handshake results
1056 1056 i> write(171) -> 171:
1057 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1057 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1058 1058 i> hello\n
1059 1059 i> between\n
1060 1060 i> pairs 81\n
1061 1061 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1062 1062 i> flush() -> None
1063 1063 o> readline() -> 62:
1064 o> upgraded * exp-ssh-v2-0001\n (glob)
1064 o> upgraded * exp-ssh-v2-0002\n (glob)
1065 1065 o> readline() -> 4:
1066 1066 o> 426\n
1067 1067 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1186,14 +1186,14 b' print() to stdout and stderr both get ca'
1186 1186 testing ssh2
1187 1187 creating ssh peer from handshake results
1188 1188 i> write(171) -> 171:
1189 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1189 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1190 1190 i> hello\n
1191 1191 i> between\n
1192 1192 i> pairs 81\n
1193 1193 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1194 1194 i> flush() -> None
1195 1195 o> readline() -> 62:
1196 o> upgraded * exp-ssh-v2-0001\n (glob)
1196 o> upgraded * exp-ssh-v2-0002\n (glob)
1197 1197 o> readline() -> 4:
1198 1198 o> 426\n
1199 1199 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1322,14 +1322,14 b' Shell hook writing to stdout has output '
1322 1322 testing ssh2
1323 1323 creating ssh peer from handshake results
1324 1324 i> write(171) -> 171:
1325 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1325 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1326 1326 i> hello\n
1327 1327 i> between\n
1328 1328 i> pairs 81\n
1329 1329 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1330 1330 i> flush() -> None
1331 1331 o> readline() -> 62:
1332 o> upgraded * exp-ssh-v2-0001\n (glob)
1332 o> upgraded * exp-ssh-v2-0002\n (glob)
1333 1333 o> readline() -> 4:
1334 1334 o> 426\n
1335 1335 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1451,14 +1451,14 b' Shell hook writing to stderr has output '
1451 1451 testing ssh2
1452 1452 creating ssh peer from handshake results
1453 1453 i> write(171) -> 171:
1454 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1454 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1455 1455 i> hello\n
1456 1456 i> between\n
1457 1457 i> pairs 81\n
1458 1458 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1459 1459 i> flush() -> None
1460 1460 o> readline() -> 62:
1461 o> upgraded * exp-ssh-v2-0001\n (glob)
1461 o> upgraded * exp-ssh-v2-0002\n (glob)
1462 1462 o> readline() -> 4:
1463 1463 o> 426\n
1464 1464 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1584,14 +1584,14 b' Shell hook writing to stdout and stderr '
1584 1584 testing ssh2
1585 1585 creating ssh peer from handshake results
1586 1586 i> write(171) -> 171:
1587 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1587 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1588 1588 i> hello\n
1589 1589 i> between\n
1590 1590 i> pairs 81\n
1591 1591 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1592 1592 i> flush() -> None
1593 1593 o> readline() -> 62:
1594 o> upgraded * exp-ssh-v2-0001\n (glob)
1594 o> upgraded * exp-ssh-v2-0002\n (glob)
1595 1595 o> readline() -> 4:
1596 1596 o> 426\n
1597 1597 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1729,14 +1729,14 b' Shell and Python hooks writing to stdout'
1729 1729 testing ssh2
1730 1730 creating ssh peer from handshake results
1731 1731 i> write(171) -> 171:
1732 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1732 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1733 1733 i> hello\n
1734 1734 i> between\n
1735 1735 i> pairs 81\n
1736 1736 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1737 1737 i> flush() -> None
1738 1738 o> readline() -> 62:
1739 o> upgraded * exp-ssh-v2-0001\n (glob)
1739 o> upgraded * exp-ssh-v2-0002\n (glob)
1740 1740 o> readline() -> 4:
1741 1741 o> 426\n
1742 1742 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1858,14 +1858,14 b' Pushing a bundle1 with no output'
1858 1858 testing ssh2
1859 1859 creating ssh peer from handshake results
1860 1860 i> write(171) -> 171:
1861 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1861 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1862 1862 i> hello\n
1863 1863 i> between\n
1864 1864 i> pairs 81\n
1865 1865 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1866 1866 i> flush() -> None
1867 1867 o> readline() -> 62:
1868 o> upgraded * exp-ssh-v2-0001\n (glob)
1868 o> upgraded * exp-ssh-v2-0002\n (glob)
1869 1869 o> readline() -> 4:
1870 1870 o> 426\n
1871 1871 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1992,14 +1992,14 b' Pushing a bundle1 with ui.write() and ui'
1992 1992 testing ssh2
1993 1993 creating ssh peer from handshake results
1994 1994 i> write(171) -> 171:
1995 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1995 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1996 1996 i> hello\n
1997 1997 i> between\n
1998 1998 i> pairs 81\n
1999 1999 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
2000 2000 i> flush() -> None
2001 2001 o> readline() -> 62:
2002 o> upgraded * exp-ssh-v2-0001\n (glob)
2002 o> upgraded * exp-ssh-v2-0002\n (glob)
2003 2003 o> readline() -> 4:
2004 2004 o> 426\n
2005 2005 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -954,7 +954,7 b' Send an upgrade request to a server that'
954 954 $ hg --config experimental.sshpeer.advertise-v2=true --debug debugpeer ssh://user@dummy/server
955 955 running * "*/tests/dummyssh" 'user@dummy' 'hg -R server serve --stdio' (glob) (no-windows !)
956 956 running * "*\tests/dummyssh" "user@dummy" "hg -R server serve --stdio" (glob) (windows !)
957 sending upgrade request: * proto=exp-ssh-v2-0001 (glob)
957 sending upgrade request: * proto=exp-ssh-v2-0002 (glob)
958 958 devel-peer-request: hello+between
959 959 devel-peer-request: pairs: 81 bytes
960 960 sending hello command
@@ -984,7 +984,7 b' Send an upgrade request to a server that'
984 984
985 985 $ hg debugwireproto --localssh --peer raw << EOF
986 986 > raw
987 > upgrade this-is-some-token proto=exp-ssh-v2-0001\n
987 > upgrade this-is-some-token proto=exp-ssh-v2-0002\n
988 988 > hello\n
989 989 > between\n
990 990 > pairs 81\n
@@ -995,13 +995,13 b' Send an upgrade request to a server that'
995 995 > EOF
996 996 using raw connection to peer
997 997 i> write(153) -> 153:
998 i> upgrade this-is-some-token proto=exp-ssh-v2-0001\n
998 i> upgrade this-is-some-token proto=exp-ssh-v2-0002\n
999 999 i> hello\n
1000 1000 i> between\n
1001 1001 i> pairs 81\n
1002 1002 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1003 1003 o> readline() -> 44:
1004 o> upgraded this-is-some-token exp-ssh-v2-0001\n
1004 o> upgraded this-is-some-token exp-ssh-v2-0002\n
1005 1005 o> readline() -> 4:
1006 1006 o> 426\n
1007 1007 o> readline() -> 427:
@@ -1012,12 +1012,12 b' Send an upgrade request to a server that'
1012 1012 $ hg --config experimental.sshpeer.advertise-v2=true --debug debugpeer ssh://user@dummy/server
1013 1013 running * "*/tests/dummyssh" 'user@dummy' 'hg -R server serve --stdio' (glob) (no-windows !)
1014 1014 running * "*\tests/dummyssh" "user@dummy" "hg -R server serve --stdio" (glob) (windows !)
1015 sending upgrade request: * proto=exp-ssh-v2-0001 (glob)
1015 sending upgrade request: * proto=exp-ssh-v2-0002 (glob)
1016 1016 devel-peer-request: hello+between
1017 1017 devel-peer-request: pairs: 81 bytes
1018 1018 sending hello command
1019 1019 sending between command
1020 protocol upgraded to exp-ssh-v2-0001
1020 protocol upgraded to exp-ssh-v2-0002
1021 1021 remote: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
1022 1022 devel-peer-request: protocaps
1023 1023 devel-peer-request: caps: * bytes (glob)
@@ -1031,12 +1031,12 b' Verify the peer has capabilities'
1031 1031 $ hg --config experimental.sshpeer.advertise-v2=true --debug debugcapabilities ssh://user@dummy/server
1032 1032 running * "*/tests/dummyssh" 'user@dummy' 'hg -R server serve --stdio' (glob) (no-windows !)
1033 1033 running * "*\tests/dummyssh" "user@dummy" "hg -R server serve --stdio" (glob) (windows !)
1034 sending upgrade request: * proto=exp-ssh-v2-0001 (glob)
1034 sending upgrade request: * proto=exp-ssh-v2-0002 (glob)
1035 1035 devel-peer-request: hello+between
1036 1036 devel-peer-request: pairs: 81 bytes
1037 1037 sending hello command
1038 1038 sending between command
1039 protocol upgraded to exp-ssh-v2-0001
1039 protocol upgraded to exp-ssh-v2-0002
1040 1040 remote: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
1041 1041 devel-peer-request: protocaps
1042 1042 devel-peer-request: caps: * bytes (glob)
@@ -1087,7 +1087,7 b' Command after upgrade to version 2 is pr'
1087 1087
1088 1088 $ hg debugwireproto --localssh --peer raw << EOF
1089 1089 > raw
1090 > upgrade this-is-some-token proto=exp-ssh-v2-0001\n
1090 > upgrade this-is-some-token proto=exp-ssh-v2-0002\n
1091 1091 > hello\n
1092 1092 > between\n
1093 1093 > pairs 81\n
@@ -1102,13 +1102,13 b' Command after upgrade to version 2 is pr'
1102 1102 > EOF
1103 1103 using raw connection to peer
1104 1104 i> write(153) -> 153:
1105 i> upgrade this-is-some-token proto=exp-ssh-v2-0001\n
1105 i> upgrade this-is-some-token proto=exp-ssh-v2-0002\n
1106 1106 i> hello\n
1107 1107 i> between\n
1108 1108 i> pairs 81\n
1109 1109 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1110 1110 o> readline() -> 44:
1111 o> upgraded this-is-some-token exp-ssh-v2-0001\n
1111 o> upgraded this-is-some-token exp-ssh-v2-0002\n
1112 1112 o> readline() -> 4:
1113 1113 o> 426\n
1114 1114 o> readline() -> 427:
@@ -1124,7 +1124,7 b' Multiple upgrades is not allowed'
1124 1124
1125 1125 $ hg debugwireproto --localssh --peer raw << EOF
1126 1126 > raw
1127 > upgrade this-is-some-token proto=exp-ssh-v2-0001\n
1127 > upgrade this-is-some-token proto=exp-ssh-v2-0002\n
1128 1128 > hello\n
1129 1129 > between\n
1130 1130 > pairs 81\n
@@ -1140,13 +1140,13 b' Multiple upgrades is not allowed'
1140 1140 > EOF
1141 1141 using raw connection to peer
1142 1142 i> write(153) -> 153:
1143 i> upgrade this-is-some-token proto=exp-ssh-v2-0001\n
1143 i> upgrade this-is-some-token proto=exp-ssh-v2-0002\n
1144 1144 i> hello\n
1145 1145 i> between\n
1146 1146 i> pairs 81\n
1147 1147 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1148 1148 o> readline() -> 44:
1149 o> upgraded this-is-some-token exp-ssh-v2-0001\n
1149 o> upgraded this-is-some-token exp-ssh-v2-0002\n
1150 1150 o> readline() -> 4:
1151 1151 o> 426\n
1152 1152 o> readline() -> 427:
@@ -1236,14 +1236,14 b' Upgrade request must be followed by hell'
1236 1236
1237 1237 $ hg debugwireproto --localssh --peer raw << EOF
1238 1238 > raw
1239 > upgrade token proto=exp-ssh-v2-0001\n
1239 > upgrade token proto=exp-ssh-v2-0002\n
1240 1240 > invalid\n
1241 1241 > readline
1242 1242 > readavailable
1243 1243 > EOF
1244 1244 using raw connection to peer
1245 1245 i> write(44) -> 44:
1246 i> upgrade token proto=exp-ssh-v2-0001\n
1246 i> upgrade token proto=exp-ssh-v2-0002\n
1247 1247 i> invalid\n
1248 1248 o> readline() -> 1:
1249 1249 o> \n
@@ -1253,7 +1253,7 b' Upgrade request must be followed by hell'
1253 1253
1254 1254 $ hg debugwireproto --localssh --peer raw << EOF
1255 1255 > raw
1256 > upgrade token proto=exp-ssh-v2-0001\n
1256 > upgrade token proto=exp-ssh-v2-0002\n
1257 1257 > hello\n
1258 1258 > invalid\n
1259 1259 > readline
@@ -1261,7 +1261,7 b' Upgrade request must be followed by hell'
1261 1261 > EOF
1262 1262 using raw connection to peer
1263 1263 i> write(50) -> 50:
1264 i> upgrade token proto=exp-ssh-v2-0001\n
1264 i> upgrade token proto=exp-ssh-v2-0002\n
1265 1265 i> hello\n
1266 1266 i> invalid\n
1267 1267 o> readline() -> 1:
@@ -1272,7 +1272,7 b' Upgrade request must be followed by hell'
1272 1272
1273 1273 $ hg debugwireproto --localssh --peer raw << EOF
1274 1274 > raw
1275 > upgrade token proto=exp-ssh-v2-0001\n
1275 > upgrade token proto=exp-ssh-v2-0002\n
1276 1276 > hello\n
1277 1277 > between\n
1278 1278 > invalid\n
@@ -1281,7 +1281,7 b' Upgrade request must be followed by hell'
1281 1281 > EOF
1282 1282 using raw connection to peer
1283 1283 i> write(58) -> 58:
1284 i> upgrade token proto=exp-ssh-v2-0001\n
1284 i> upgrade token proto=exp-ssh-v2-0002\n
1285 1285 i> hello\n
1286 1286 i> between\n
1287 1287 i> invalid\n
@@ -1368,14 +1368,14 b' Test listkeys for listing namespaces'
1368 1368 testing ssh2
1369 1369 creating ssh peer from handshake results
1370 1370 i> write(171) -> 171:
1371 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1371 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1372 1372 i> hello\n
1373 1373 i> between\n
1374 1374 i> pairs 81\n
1375 1375 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1376 1376 i> flush() -> None
1377 1377 o> readline() -> 62:
1378 o> upgraded * exp-ssh-v2-0001\n (glob)
1378 o> upgraded * exp-ssh-v2-0002\n (glob)
1379 1379 o> readline() -> 4:
1380 1380 o> 426\n
1381 1381 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1448,14 +1448,14 b' With no bookmarks set'
1448 1448 testing ssh2
1449 1449 creating ssh peer from handshake results
1450 1450 i> write(171) -> 171:
1451 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1451 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1452 1452 i> hello\n
1453 1453 i> between\n
1454 1454 i> pairs 81\n
1455 1455 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1456 1456 i> flush() -> None
1457 1457 o> readline() -> 62:
1458 o> upgraded * exp-ssh-v2-0001\n (glob)
1458 o> upgraded * exp-ssh-v2-0002\n (glob)
1459 1459 o> readline() -> 4:
1460 1460 o> 426\n
1461 1461 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1512,14 +1512,14 b' With a single bookmark set'
1512 1512 testing ssh2
1513 1513 creating ssh peer from handshake results
1514 1514 i> write(171) -> 171:
1515 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1515 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1516 1516 i> hello\n
1517 1517 i> between\n
1518 1518 i> pairs 81\n
1519 1519 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1520 1520 i> flush() -> None
1521 1521 o> readline() -> 62:
1522 o> upgraded * exp-ssh-v2-0001\n (glob)
1522 o> upgraded * exp-ssh-v2-0002\n (glob)
1523 1523 o> readline() -> 4:
1524 1524 o> 426\n
1525 1525 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1582,14 +1582,14 b' With multiple bookmarks set'
1582 1582 testing ssh2
1583 1583 creating ssh peer from handshake results
1584 1584 i> write(171) -> 171:
1585 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1585 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1586 1586 i> hello\n
1587 1587 i> between\n
1588 1588 i> pairs 81\n
1589 1589 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1590 1590 i> flush() -> None
1591 1591 o> readline() -> 62:
1592 o> upgraded * exp-ssh-v2-0001\n (glob)
1592 o> upgraded * exp-ssh-v2-0002\n (glob)
1593 1593 o> readline() -> 4:
1594 1594 o> 426\n
1595 1595 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1661,14 +1661,14 b' Test pushkey for bookmarks'
1661 1661 testing ssh2
1662 1662 creating ssh peer from handshake results
1663 1663 i> write(171) -> 171:
1664 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1664 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1665 1665 i> hello\n
1666 1666 i> between\n
1667 1667 i> pairs 81\n
1668 1668 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1669 1669 i> flush() -> None
1670 1670 o> readline() -> 62:
1671 o> upgraded * exp-ssh-v2-0001\n (glob)
1671 o> upgraded * exp-ssh-v2-0002\n (glob)
1672 1672 o> readline() -> 4:
1673 1673 o> 426\n
1674 1674 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1746,14 +1746,14 b' Phases on empty repo'
1746 1746 testing ssh2
1747 1747 creating ssh peer from handshake results
1748 1748 i> write(171) -> 171:
1749 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1749 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1750 1750 i> hello\n
1751 1751 i> between\n
1752 1752 i> pairs 81\n
1753 1753 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1754 1754 i> flush() -> None
1755 1755 o> readline() -> 62:
1756 o> upgraded * exp-ssh-v2-0001\n (glob)
1756 o> upgraded * exp-ssh-v2-0002\n (glob)
1757 1757 o> readline() -> 4:
1758 1758 o> 426\n
1759 1759 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1834,14 +1834,14 b' Two draft heads'
1834 1834 testing ssh2
1835 1835 creating ssh peer from handshake results
1836 1836 i> write(171) -> 171:
1837 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1837 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1838 1838 i> hello\n
1839 1839 i> between\n
1840 1840 i> pairs 81\n
1841 1841 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1842 1842 i> flush() -> None
1843 1843 o> readline() -> 62:
1844 o> upgraded * exp-ssh-v2-0001\n (glob)
1844 o> upgraded * exp-ssh-v2-0002\n (glob)
1845 1845 o> readline() -> 4:
1846 1846 o> 426\n
1847 1847 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1909,14 +1909,14 b' Single draft head'
1909 1909 testing ssh2
1910 1910 creating ssh peer from handshake results
1911 1911 i> write(171) -> 171:
1912 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1912 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1913 1913 i> hello\n
1914 1914 i> between\n
1915 1915 i> pairs 81\n
1916 1916 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1917 1917 i> flush() -> None
1918 1918 o> readline() -> 62:
1919 o> upgraded * exp-ssh-v2-0001\n (glob)
1919 o> upgraded * exp-ssh-v2-0002\n (glob)
1920 1920 o> readline() -> 4:
1921 1921 o> 426\n
1922 1922 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -1979,14 +1979,14 b' All public heads'
1979 1979 testing ssh2
1980 1980 creating ssh peer from handshake results
1981 1981 i> write(171) -> 171:
1982 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
1982 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
1983 1983 i> hello\n
1984 1984 i> between\n
1985 1985 i> pairs 81\n
1986 1986 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
1987 1987 i> flush() -> None
1988 1988 o> readline() -> 62:
1989 o> upgraded * exp-ssh-v2-0001\n (glob)
1989 o> upgraded * exp-ssh-v2-0002\n (glob)
1990 1990 o> readline() -> 4:
1991 1991 o> 426\n
1992 1992 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -2058,14 +2058,14 b' Setting public phase via pushkey'
2058 2058 testing ssh2
2059 2059 creating ssh peer from handshake results
2060 2060 i> write(171) -> 171:
2061 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
2061 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
2062 2062 i> hello\n
2063 2063 i> between\n
2064 2064 i> pairs 81\n
2065 2065 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
2066 2066 i> flush() -> None
2067 2067 o> readline() -> 62:
2068 o> upgraded * exp-ssh-v2-0001\n (glob)
2068 o> upgraded * exp-ssh-v2-0002\n (glob)
2069 2069 o> readline() -> 4:
2070 2070 o> 426\n
2071 2071 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -2164,14 +2164,14 b' Test batching of requests'
2164 2164 testing ssh2
2165 2165 creating ssh peer from handshake results
2166 2166 i> write(171) -> 171:
2167 i> upgrade * proto=exp-ssh-v2-0001\n (glob)
2167 i> upgrade * proto=exp-ssh-v2-0002\n (glob)
2168 2168 i> hello\n
2169 2169 i> between\n
2170 2170 i> pairs 81\n
2171 2171 i> 0000000000000000000000000000000000000000-0000000000000000000000000000000000000000
2172 2172 i> flush() -> None
2173 2173 o> readline() -> 62:
2174 o> upgraded * exp-ssh-v2-0001\n (glob)
2174 o> upgraded * exp-ssh-v2-0002\n (glob)
2175 2175 o> readline() -> 4:
2176 2176 o> 426\n
2177 2177 o> read(426) -> 426: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
@@ -488,13 +488,13 b' debug output'
488 488 $ hg pull --debug ssh://user@dummy/remote --config devel.debug.peer-request=yes
489 489 pulling from ssh://user@dummy/remote
490 490 running .* ".*/dummyssh" ['"]user@dummy['"] ('|")hg -R remote serve --stdio('|") (re)
491 sending upgrade request: * proto=exp-ssh-v2-0001 (glob) (sshv2 !)
491 sending upgrade request: * proto=exp-ssh-v2-0002 (glob) (sshv2 !)
492 492 devel-peer-request: hello+between
493 493 devel-peer-request: pairs: 81 bytes
494 494 sending hello command
495 495 sending between command
496 496 remote: 427 (sshv1 !)
497 protocol upgraded to exp-ssh-v2-0001 (sshv2 !)
497 protocol upgraded to exp-ssh-v2-0002 (sshv2 !)
498 498 remote: capabilities: batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset getbundle known lookup protocaps pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
499 499 remote: 1 (sshv1 !)
500 500 devel-peer-request: protocaps
@@ -43,7 +43,7 b' No arguments returns something reasonabl'
43 43 > EOF
44 44 creating http peer for wire protocol version 2
45 45 sending branchmap command
46 s> POST /api/exp-http-v2-0001/ro/branchmap HTTP/1.1\r\n
46 s> POST /api/exp-http-v2-0002/ro/branchmap HTTP/1.1\r\n
47 47 s> Accept-Encoding: identity\r\n
48 48 s> accept: application/mercurial-exp-framing-0005\r\n
49 49 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -194,7 +194,7 b' Request for HTTPv2 service returns infor'
194 194 $ sendhttpraw << EOF
195 195 > httprequest GET ?cmd=capabilities
196 196 > user-agent: test
197 > x-hgupgrade-1: exp-http-v2-0001 foo bar
197 > x-hgupgrade-1: exp-http-v2-0002 foo bar
198 198 > x-hgproto-1: cbor
199 199 > EOF
200 200 using raw connection to peer
@@ -202,7 +202,7 b' Request for HTTPv2 service returns infor'
202 202 s> Accept-Encoding: identity\r\n
203 203 s> user-agent: test\r\n
204 204 s> x-hgproto-1: cbor\r\n
205 s> x-hgupgrade-1: exp-http-v2-0001 foo bar\r\n
205 s> x-hgupgrade-1: exp-http-v2-0002 foo bar\r\n
206 206 s> host: $LOCALIP:$HGPORT\r\n (glob)
207 207 s> \r\n
208 208 s> makefile('rb', None)
@@ -212,11 +212,11 b' Request for HTTPv2 service returns infor'
212 212 s> Content-Type: application/mercurial-cbor\r\n
213 213 s> Content-Length: *\r\n (glob)
214 214 s> \r\n
215 s> \xa3GapibaseDapi/Dapis\xa1Pexp-http-v2-0001\xa5Hcommands\xaaIbranchmap\xa2Dargs\xa0Kpermissions\x81DpullLcapabilities\xa2Dargs\xa0Kpermissions\x81DpullMchangesetdata\xa2Dargs\xa3Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x84IbookmarksGparentsEphaseHrevisionInoderange\xa3Gdefault\xf6Hrequired\xf4DtypeDlistEnodes\xa3Gdefault\xf6Hrequired\xf4DtypeDlistKpermissions\x81DpullHfiledata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDpath\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullEheads\xa2Dargs\xa1Jpubliconly\xa3Gdefault\xf4Hrequired\xf4DtypeDboolKpermissions\x81DpullEknown\xa2Dargs\xa1Enodes\xa3Gdefault\x80Hrequired\xf4DtypeDlistKpermissions\x81DpullHlistkeys\xa2Dargs\xa1Inamespace\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullFlookup\xa2Dargs\xa1Ckey\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullLmanifestdata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDtree\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullGpushkey\xa2Dargs\xa4Ckey\xa2Hrequired\xf5DtypeEbytesInamespace\xa2Hrequired\xf5DtypeEbytesCnew\xa2Hrequired\xf5DtypeEbytesCold\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpushKcompression\x81\xa1DnameDzlibQframingmediatypes\x81X&application/mercurial-exp-framing-0005Rpathfilterprefixes\xd9\x01\x02\x82Epath:Lrootfilesin:Nrawrepoformats\x82LgeneraldeltaHrevlogv1Nv1capabilitiesY\x01\xd3batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset compression=$BUNDLE2_COMPRESSIONS$ getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
215 s> \xa3GapibaseDapi/Dapis\xa1Pexp-http-v2-0002\xa5Hcommands\xaaIbranchmap\xa2Dargs\xa0Kpermissions\x81DpullLcapabilities\xa2Dargs\xa0Kpermissions\x81DpullMchangesetdata\xa2Dargs\xa3Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x84IbookmarksGparentsEphaseHrevisionInoderange\xa3Gdefault\xf6Hrequired\xf4DtypeDlistEnodes\xa3Gdefault\xf6Hrequired\xf4DtypeDlistKpermissions\x81DpullHfiledata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDpath\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullEheads\xa2Dargs\xa1Jpubliconly\xa3Gdefault\xf4Hrequired\xf4DtypeDboolKpermissions\x81DpullEknown\xa2Dargs\xa1Enodes\xa3Gdefault\x80Hrequired\xf4DtypeDlistKpermissions\x81DpullHlistkeys\xa2Dargs\xa1Inamespace\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullFlookup\xa2Dargs\xa1Ckey\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullLmanifestdata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDtree\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullGpushkey\xa2Dargs\xa4Ckey\xa2Hrequired\xf5DtypeEbytesInamespace\xa2Hrequired\xf5DtypeEbytesCnew\xa2Hrequired\xf5DtypeEbytesCold\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpushKcompression\x81\xa1DnameDzlibQframingmediatypes\x81X&application/mercurial-exp-framing-0005Rpathfilterprefixes\xd9\x01\x02\x82Epath:Lrootfilesin:Nrawrepoformats\x82LgeneraldeltaHrevlogv1Nv1capabilitiesY\x01\xd3batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset compression=$BUNDLE2_COMPRESSIONS$ getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
216 216 cbor> {
217 217 b'apibase': b'api/',
218 218 b'apis': {
219 b'exp-http-v2-0001': {
219 b'exp-http-v2-0002': {
220 220 b'commands': {
221 221 b'branchmap': {
222 222 b'args': {},
@@ -417,7 +417,7 b' capabilities command returns expected in'
417 417 s> Accept-Encoding: identity\r\n
418 418 s> vary: X-HgProto-1,X-HgUpgrade-1\r\n
419 419 s> x-hgproto-1: cbor\r\n
420 s> x-hgupgrade-1: exp-http-v2-0001\r\n
420 s> x-hgupgrade-1: exp-http-v2-0002\r\n
421 421 s> accept: application/mercurial-0.1\r\n
422 422 s> host: $LOCALIP:$HGPORT\r\n (glob)
423 423 s> user-agent: Mercurial debugwireproto\r\n
@@ -429,9 +429,9 b' capabilities command returns expected in'
429 429 s> Content-Type: application/mercurial-cbor\r\n
430 430 s> Content-Length: *\r\n (glob)
431 431 s> \r\n
432 s> \xa3GapibaseDapi/Dapis\xa1Pexp-http-v2-0001\xa5Hcommands\xaaIbranchmap\xa2Dargs\xa0Kpermissions\x81DpullLcapabilities\xa2Dargs\xa0Kpermissions\x81DpullMchangesetdata\xa2Dargs\xa3Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x84IbookmarksGparentsEphaseHrevisionInoderange\xa3Gdefault\xf6Hrequired\xf4DtypeDlistEnodes\xa3Gdefault\xf6Hrequired\xf4DtypeDlistKpermissions\x81DpullHfiledata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDpath\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullEheads\xa2Dargs\xa1Jpubliconly\xa3Gdefault\xf4Hrequired\xf4DtypeDboolKpermissions\x81DpullEknown\xa2Dargs\xa1Enodes\xa3Gdefault\x80Hrequired\xf4DtypeDlistKpermissions\x81DpullHlistkeys\xa2Dargs\xa1Inamespace\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullFlookup\xa2Dargs\xa1Ckey\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullLmanifestdata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDtree\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullGpushkey\xa2Dargs\xa4Ckey\xa2Hrequired\xf5DtypeEbytesInamespace\xa2Hrequired\xf5DtypeEbytesCnew\xa2Hrequired\xf5DtypeEbytesCold\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpushKcompression\x81\xa1DnameDzlibQframingmediatypes\x81X&application/mercurial-exp-framing-0005Rpathfilterprefixes\xd9\x01\x02\x82Epath:Lrootfilesin:Nrawrepoformats\x82LgeneraldeltaHrevlogv1Nv1capabilitiesY\x01\xd3batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset compression=$BUNDLE2_COMPRESSIONS$ getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
432 s> \xa3GapibaseDapi/Dapis\xa1Pexp-http-v2-0002\xa5Hcommands\xaaIbranchmap\xa2Dargs\xa0Kpermissions\x81DpullLcapabilities\xa2Dargs\xa0Kpermissions\x81DpullMchangesetdata\xa2Dargs\xa3Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x84IbookmarksGparentsEphaseHrevisionInoderange\xa3Gdefault\xf6Hrequired\xf4DtypeDlistEnodes\xa3Gdefault\xf6Hrequired\xf4DtypeDlistKpermissions\x81DpullHfiledata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDpath\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullEheads\xa2Dargs\xa1Jpubliconly\xa3Gdefault\xf4Hrequired\xf4DtypeDboolKpermissions\x81DpullEknown\xa2Dargs\xa1Enodes\xa3Gdefault\x80Hrequired\xf4DtypeDlistKpermissions\x81DpullHlistkeys\xa2Dargs\xa1Inamespace\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullFlookup\xa2Dargs\xa1Ckey\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullLmanifestdata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDtree\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullGpushkey\xa2Dargs\xa4Ckey\xa2Hrequired\xf5DtypeEbytesInamespace\xa2Hrequired\xf5DtypeEbytesCnew\xa2Hrequired\xf5DtypeEbytesCold\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpushKcompression\x81\xa1DnameDzlibQframingmediatypes\x81X&application/mercurial-exp-framing-0005Rpathfilterprefixes\xd9\x01\x02\x82Epath:Lrootfilesin:Nrawrepoformats\x82LgeneraldeltaHrevlogv1Nv1capabilitiesY\x01\xd3batch branchmap $USUAL_BUNDLE2_CAPS$ changegroupsubset compression=$BUNDLE2_COMPRESSIONS$ getbundle httpheader=1024 httpmediatype=0.1rx,0.1tx,0.2tx known lookup pushkey streamreqs=generaldelta,revlogv1 unbundle=HG10GZ,HG10BZ,HG10UN unbundlehash
433 433 sending capabilities command
434 s> POST /api/exp-http-v2-0001/ro/capabilities HTTP/1.1\r\n
434 s> POST /api/exp-http-v2-0002/ro/capabilities HTTP/1.1\r\n
435 435 s> Accept-Encoding: identity\r\n
436 436 s> accept: application/mercurial-exp-framing-0005\r\n
437 437 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -44,7 +44,7 b' No arguments is an invalid request'
44 44 > EOF
45 45 creating http peer for wire protocol version 2
46 46 sending changesetdata command
47 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
47 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
48 48 s> Accept-Encoding: identity\r\n
49 49 s> accept: application/mercurial-exp-framing-0005\r\n
50 50 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -78,7 +78,7 b' Empty noderange heads results in an erro'
78 78 > EOF
79 79 creating http peer for wire protocol version 2
80 80 sending changesetdata command
81 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
81 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
82 82 s> Accept-Encoding: identity\r\n
83 83 s> accept: application/mercurial-exp-framing-0005\r\n
84 84 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -112,7 +112,7 b' Sending just noderange heads sends all r'
112 112 > EOF
113 113 creating http peer for wire protocol version 2
114 114 sending changesetdata command
115 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
115 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
116 116 s> Accept-Encoding: identity\r\n
117 117 s> accept: application/mercurial-exp-framing-0005\r\n
118 118 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -170,7 +170,7 b' Sending root nodes limits what data is s'
170 170 > EOF
171 171 creating http peer for wire protocol version 2
172 172 sending changesetdata command
173 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
173 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
174 174 s> Accept-Encoding: identity\r\n
175 175 s> accept: application/mercurial-exp-framing-0005\r\n
176 176 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -222,7 +222,7 b' Requesting data on a single node by node'
222 222 > EOF
223 223 creating http peer for wire protocol version 2
224 224 sending changesetdata command
225 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
225 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
226 226 s> Accept-Encoding: identity\r\n
227 227 s> accept: application/mercurial-exp-framing-0005\r\n
228 228 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -272,7 +272,7 b' Specifying a noderange and nodes takes u'
272 272 > EOF
273 273 creating http peer for wire protocol version 2
274 274 sending changesetdata command
275 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
275 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
276 276 s> Accept-Encoding: identity\r\n
277 277 s> accept: application/mercurial-exp-framing-0005\r\n
278 278 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -325,7 +325,7 b' Parents data is transferred upon request'
325 325 > EOF
326 326 creating http peer for wire protocol version 2
327 327 sending changesetdata command
328 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
328 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
329 329 s> Accept-Encoding: identity\r\n
330 330 s> accept: application/mercurial-exp-framing-0005\r\n
331 331 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -379,7 +379,7 b' Phase data is transferred upon request'
379 379 > EOF
380 380 creating http peer for wire protocol version 2
381 381 sending changesetdata command
382 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
382 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
383 383 s> Accept-Encoding: identity\r\n
384 384 s> accept: application/mercurial-exp-framing-0005\r\n
385 385 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -430,7 +430,7 b' Revision data is transferred upon reques'
430 430 > EOF
431 431 creating http peer for wire protocol version 2
432 432 sending changesetdata command
433 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
433 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
434 434 s> Accept-Encoding: identity\r\n
435 435 s> accept: application/mercurial-exp-framing-0005\r\n
436 436 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -451,16 +451,16 b' Revision data is transferred upon reques'
451 451 s> \xa1FstatusBok
452 452 s> \r\n
453 453 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
454 s> 7e\r\n
455 s> v\x00\x00\x01\x00\x02\x001
456 s> \xa1Jtotalitems\x01\xa2DnodeT\xea\xe5\xf8,.b#h\xd2}\xae\xcbv\xb7\xe3\x93\xd0\xf2B\x11Lrevisionsize\x18=X=1b74476799ec8318045db759b1b4bcc9b839d0aa\n
454 s> 8c\r\n
455 s> \x84\x00\x00\x01\x00\x02\x001
456 s> \xa1Jtotalitems\x01\xa2Ofieldsfollowing\x81\x82Hrevision\x18=DnodeT\xea\xe5\xf8,.b#h\xd2}\xae\xcbv\xb7\xe3\x93\xd0\xf2B\x11X=1b74476799ec8318045db759b1b4bcc9b839d0aa\n
457 457 s> test\n
458 458 s> 0 0\n
459 459 s> a\n
460 460 s> \n
461 461 s> commit 3
462 462 s> \r\n
463 received frame(size=118; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
463 received frame(size=132; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
464 464 s> 8\r\n
465 465 s> \x00\x00\x00\x01\x00\x02\x002
466 466 s> \r\n
@@ -472,8 +472,13 b' Revision data is transferred upon reques'
472 472 b'totalitems': 1
473 473 },
474 474 {
475 b'node': b'\xea\xe5\xf8,.b#h\xd2}\xae\xcbv\xb7\xe3\x93\xd0\xf2B\x11',
476 b'revisionsize': 61
475 b'fieldsfollowing': [
476 [
477 b'revision',
478 61
479 ]
480 ],
481 b'node': b'\xea\xe5\xf8,.b#h\xd2}\xae\xcbv\xb7\xe3\x93\xd0\xf2B\x11'
477 482 },
478 483 b'1b74476799ec8318045db759b1b4bcc9b839d0aa\ntest\n0 0\na\n\ncommit 3'
479 484 ]
@@ -487,7 +492,7 b" Bookmarks key isn't present if no bookma"
487 492 > EOF
488 493 creating http peer for wire protocol version 2
489 494 sending changesetdata command
490 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
495 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
491 496 s> Accept-Encoding: identity\r\n
492 497 s> accept: application/mercurial-exp-framing-0005\r\n
493 498 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -550,7 +555,7 b' Bookmarks are sent when requested'
550 555 > EOF
551 556 creating http peer for wire protocol version 2
552 557 sending changesetdata command
553 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
558 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
554 559 s> Accept-Encoding: identity\r\n
555 560 s> accept: application/mercurial-exp-framing-0005\r\n
556 561 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -616,7 +621,7 b' Bookmarks are sent when we make a no-new'
616 621 > EOF
617 622 creating http peer for wire protocol version 2
618 623 sending changesetdata command
619 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
624 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
620 625 s> Accept-Encoding: identity\r\n
621 626 s> accept: application/mercurial-exp-framing-0005\r\n
622 627 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -637,22 +642,22 b' Bookmarks are sent when we make a no-new'
637 642 s> \xa1FstatusBok
638 643 s> \r\n
639 644 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
640 s> 12f\r\n
641 s> \'\x01\x00\x01\x00\x02\x001
642 s> \xa1Jtotalitems\x02\xa2DnodeTu\x92\x91~\x1c>\x82g|\xb0\xa4\xbcq\\\xa2]\xd1-(\xc1Lrevisionsize\x18?X?7f144aea0ba742713887b564d57e9d12f12ff382\n
645 s> 14b\r\n
646 s> C\x01\x00\x01\x00\x02\x001
647 s> \xa1Jtotalitems\x02\xa2Ofieldsfollowing\x81\x82Hrevision\x18?DnodeTu\x92\x91~\x1c>\x82g|\xb0\xa4\xbcq\\\xa2]\xd1-(\xc1X?7f144aea0ba742713887b564d57e9d12f12ff382\n
643 648 s> test\n
644 649 s> 0 0\n
645 650 s> a\n
646 651 s> b\n
647 652 s> \n
648 s> commit 1\xa3Ibookmarks\x81Fbook-1DnodeT\x0b\xb8\xad\x89J\x15\xb1S\x80\xb2\xa2\xa5\xb1\x83\xe2\x0f*K(\xddLrevisionsize\x18=X=37f0a2d1c28ffe4b879109a7d1bbf8f07b3c763b\n
653 s> commit 1\xa3Ibookmarks\x81Fbook-1Ofieldsfollowing\x81\x82Hrevision\x18=DnodeT\x0b\xb8\xad\x89J\x15\xb1S\x80\xb2\xa2\xa5\xb1\x83\xe2\x0f*K(\xddX=37f0a2d1c28ffe4b879109a7d1bbf8f07b3c763b\n
649 654 s> test\n
650 655 s> 0 0\n
651 656 s> b\n
652 657 s> \n
653 658 s> commit 2\xa2Ibookmarks\x82Fbook-2Fbook-3DnodeT\xea\xe5\xf8,.b#h\xd2}\xae\xcbv\xb7\xe3\x93\xd0\xf2B\x11
654 659 s> \r\n
655 received frame(size=295; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
660 received frame(size=323; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
656 661 s> 8\r\n
657 662 s> \x00\x00\x00\x01\x00\x02\x002
658 663 s> \r\n
@@ -664,16 +669,26 b' Bookmarks are sent when we make a no-new'
664 669 b'totalitems': 2
665 670 },
666 671 {
667 b'node': b'u\x92\x91~\x1c>\x82g|\xb0\xa4\xbcq\\\xa2]\xd1-(\xc1',
668 b'revisionsize': 63
672 b'fieldsfollowing': [
673 [
674 b'revision',
675 63
676 ]
677 ],
678 b'node': b'u\x92\x91~\x1c>\x82g|\xb0\xa4\xbcq\\\xa2]\xd1-(\xc1'
669 679 },
670 680 b'7f144aea0ba742713887b564d57e9d12f12ff382\ntest\n0 0\na\nb\n\ncommit 1',
671 681 {
672 682 b'bookmarks': [
673 683 b'book-1'
674 684 ],
675 b'node': b'\x0b\xb8\xad\x89J\x15\xb1S\x80\xb2\xa2\xa5\xb1\x83\xe2\x0f*K(\xdd',
676 b'revisionsize': 61
685 b'fieldsfollowing': [
686 [
687 b'revision',
688 61
689 ]
690 ],
691 b'node': b'\x0b\xb8\xad\x89J\x15\xb1S\x80\xb2\xa2\xa5\xb1\x83\xe2\x0f*K(\xdd'
677 692 },
678 693 b'37f0a2d1c28ffe4b879109a7d1bbf8f07b3c763b\ntest\n0 0\nb\n\ncommit 2',
679 694 {
@@ -694,7 +709,7 b' Multiple fields can be transferred'
694 709 > EOF
695 710 creating http peer for wire protocol version 2
696 711 sending changesetdata command
697 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
712 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
698 713 s> Accept-Encoding: identity\r\n
699 714 s> accept: application/mercurial-exp-framing-0005\r\n
700 715 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -715,16 +730,16 b' Multiple fields can be transferred'
715 730 s> \xa1FstatusBok
716 731 s> \r\n
717 732 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
718 s> b1\r\n
719 s> \xa9\x00\x00\x01\x00\x02\x001
720 s> \xa1Jtotalitems\x01\xa3DnodeT\xea\xe5\xf8,.b#h\xd2}\xae\xcbv\xb7\xe3\x93\xd0\xf2B\x11Gparents\x82T3\x90\xef\x85\x00s\xfb\xc2\xf0\xdf\xff"D4,\x8e\x92)\x01:T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00Lrevisionsize\x18=X=1b74476799ec8318045db759b1b4bcc9b839d0aa\n
733 s> bf\r\n
734 s> \xb7\x00\x00\x01\x00\x02\x001
735 s> \xa1Jtotalitems\x01\xa3Ofieldsfollowing\x81\x82Hrevision\x18=DnodeT\xea\xe5\xf8,.b#h\xd2}\xae\xcbv\xb7\xe3\x93\xd0\xf2B\x11Gparents\x82T3\x90\xef\x85\x00s\xfb\xc2\xf0\xdf\xff"D4,\x8e\x92)\x01:T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00X=1b74476799ec8318045db759b1b4bcc9b839d0aa\n
721 736 s> test\n
722 737 s> 0 0\n
723 738 s> a\n
724 739 s> \n
725 740 s> commit 3
726 741 s> \r\n
727 received frame(size=169; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
742 received frame(size=183; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
728 743 s> 8\r\n
729 744 s> \x00\x00\x00\x01\x00\x02\x002
730 745 s> \r\n
@@ -736,12 +751,17 b' Multiple fields can be transferred'
736 751 b'totalitems': 1
737 752 },
738 753 {
754 b'fieldsfollowing': [
755 [
756 b'revision',
757 61
758 ]
759 ],
739 760 b'node': b'\xea\xe5\xf8,.b#h\xd2}\xae\xcbv\xb7\xe3\x93\xd0\xf2B\x11',
740 761 b'parents': [
741 762 b'3\x90\xef\x85\x00s\xfb\xc2\xf0\xdf\xff"D4,\x8e\x92)\x01:',
742 763 b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
743 ],
744 b'revisionsize': 61
764 ]
745 765 },
746 766 b'1b74476799ec8318045db759b1b4bcc9b839d0aa\ntest\n0 0\na\n\ncommit 3'
747 767 ]
@@ -755,7 +775,7 b' Base nodes have just their metadata (e.g'
755 775 > EOF
756 776 creating http peer for wire protocol version 2
757 777 sending changesetdata command
758 s> POST /api/exp-http-v2-0001/ro/changesetdata HTTP/1.1\r\n
778 s> POST /api/exp-http-v2-0002/ro/changesetdata HTTP/1.1\r\n
759 779 s> Accept-Encoding: identity\r\n
760 780 s> accept: application/mercurial-exp-framing-0005\r\n
761 781 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -776,27 +796,27 b' Base nodes have just their metadata (e.g'
776 796 s> \xa1FstatusBok
777 797 s> \r\n
778 798 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
779 s> 239\r\n
780 s> 1\x02\x00\x01\x00\x02\x001
781 s> \xa1Jtotalitems\x03\xa2DnodeT3\x90\xef\x85\x00s\xfb\xc2\xf0\xdf\xff"D4,\x8e\x92)\x01:EphaseFpublic\xa4DnodeTu\x92\x91~\x1c>\x82g|\xb0\xa4\xbcq\\\xa2]\xd1-(\xc1Gparents\x82T3\x90\xef\x85\x00s\xfb\xc2\xf0\xdf\xff"D4,\x8e\x92)\x01:T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00EphaseFpublicLrevisionsize\x18?X?7f144aea0ba742713887b564d57e9d12f12ff382\n
799 s> 263\r\n
800 s> [\x02\x00\x01\x00\x02\x001
801 s> \xa1Jtotalitems\x03\xa2DnodeT3\x90\xef\x85\x00s\xfb\xc2\xf0\xdf\xff"D4,\x8e\x92)\x01:EphaseFpublic\xa4Ofieldsfollowing\x81\x82Hrevision\x18?DnodeTu\x92\x91~\x1c>\x82g|\xb0\xa4\xbcq\\\xa2]\xd1-(\xc1Gparents\x82T3\x90\xef\x85\x00s\xfb\xc2\xf0\xdf\xff"D4,\x8e\x92)\x01:T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00EphaseFpublicX?7f144aea0ba742713887b564d57e9d12f12ff382\n
782 802 s> test\n
783 803 s> 0 0\n
784 804 s> a\n
785 805 s> b\n
786 806 s> \n
787 s> commit 1\xa4DnodeT\x0b\xb8\xad\x89J\x15\xb1S\x80\xb2\xa2\xa5\xb1\x83\xe2\x0f*K(\xddGparents\x82Tu\x92\x91~\x1c>\x82g|\xb0\xa4\xbcq\\\xa2]\xd1-(\xc1T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00EphaseFpublicLrevisionsize\x18=X=37f0a2d1c28ffe4b879109a7d1bbf8f07b3c763b\n
807 s> commit 1\xa4Ofieldsfollowing\x81\x82Hrevision\x18=DnodeT\x0b\xb8\xad\x89J\x15\xb1S\x80\xb2\xa2\xa5\xb1\x83\xe2\x0f*K(\xddGparents\x82Tu\x92\x91~\x1c>\x82g|\xb0\xa4\xbcq\\\xa2]\xd1-(\xc1T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00EphaseFpublicX=37f0a2d1c28ffe4b879109a7d1bbf8f07b3c763b\n
788 808 s> test\n
789 809 s> 0 0\n
790 810 s> b\n
791 811 s> \n
792 s> commit 2\xa4DnodeT\xea\xe5\xf8,.b#h\xd2}\xae\xcbv\xb7\xe3\x93\xd0\xf2B\x11Gparents\x82T3\x90\xef\x85\x00s\xfb\xc2\xf0\xdf\xff"D4,\x8e\x92)\x01:T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00EphaseEdraftLrevisionsize\x18=X=1b74476799ec8318045db759b1b4bcc9b839d0aa\n
812 s> commit 2\xa4Ofieldsfollowing\x81\x82Hrevision\x18=DnodeT\xea\xe5\xf8,.b#h\xd2}\xae\xcbv\xb7\xe3\x93\xd0\xf2B\x11Gparents\x82T3\x90\xef\x85\x00s\xfb\xc2\xf0\xdf\xff"D4,\x8e\x92)\x01:T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00EphaseEdraftX=1b74476799ec8318045db759b1b4bcc9b839d0aa\n
793 813 s> test\n
794 814 s> 0 0\n
795 815 s> a\n
796 816 s> \n
797 817 s> commit 3
798 818 s> \r\n
799 received frame(size=561; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
819 received frame(size=603; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
800 820 s> 8\r\n
801 821 s> \x00\x00\x00\x01\x00\x02\x002
802 822 s> \r\n
@@ -812,33 +832,48 b' Base nodes have just their metadata (e.g'
812 832 b'phase': b'public'
813 833 },
814 834 {
835 b'fieldsfollowing': [
836 [
837 b'revision',
838 63
839 ]
840 ],
815 841 b'node': b'u\x92\x91~\x1c>\x82g|\xb0\xa4\xbcq\\\xa2]\xd1-(\xc1',
816 842 b'parents': [
817 843 b'3\x90\xef\x85\x00s\xfb\xc2\xf0\xdf\xff"D4,\x8e\x92)\x01:',
818 844 b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
819 845 ],
820 b'phase': b'public',
821 b'revisionsize': 63
846 b'phase': b'public'
822 847 },
823 848 b'7f144aea0ba742713887b564d57e9d12f12ff382\ntest\n0 0\na\nb\n\ncommit 1',
824 849 {
850 b'fieldsfollowing': [
851 [
852 b'revision',
853 61
854 ]
855 ],
825 856 b'node': b'\x0b\xb8\xad\x89J\x15\xb1S\x80\xb2\xa2\xa5\xb1\x83\xe2\x0f*K(\xdd',
826 857 b'parents': [
827 858 b'u\x92\x91~\x1c>\x82g|\xb0\xa4\xbcq\\\xa2]\xd1-(\xc1',
828 859 b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
829 860 ],
830 b'phase': b'public',
831 b'revisionsize': 61
861 b'phase': b'public'
832 862 },
833 863 b'37f0a2d1c28ffe4b879109a7d1bbf8f07b3c763b\ntest\n0 0\nb\n\ncommit 2',
834 864 {
865 b'fieldsfollowing': [
866 [
867 b'revision',
868 61
869 ]
870 ],
835 871 b'node': b'\xea\xe5\xf8,.b#h\xd2}\xae\xcbv\xb7\xe3\x93\xd0\xf2B\x11',
836 872 b'parents': [
837 873 b'3\x90\xef\x85\x00s\xfb\xc2\xf0\xdf\xff"D4,\x8e\x92)\x01:',
838 874 b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
839 875 ],
840 b'phase': b'draft',
841 b'revisionsize': 61
876 b'phase': b'draft'
842 877 },
843 878 b'1b74476799ec8318045db759b1b4bcc9b839d0aa\ntest\n0 0\na\n\ncommit 3'
844 879 ]
@@ -284,11 +284,11 b' Requesting revision data works'
284 284 s> \xa1FstatusBok
285 285 s> \r\n
286 286 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
287 s> 42\r\n
288 s> :\x00\x00\x01\x00\x02\x001
289 s> \xa1Jtotalitems\x01\xa2DnodeT\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xccLrevisionsize\x03Ca1\n
287 s> 50\r\n
288 s> H\x00\x00\x01\x00\x02\x001
289 s> \xa1Jtotalitems\x01\xa2Ofieldsfollowing\x81\x82Hrevision\x03DnodeT\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xccCa1\n
290 290 s> \r\n
291 received frame(size=58; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
291 received frame(size=72; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
292 292 s> 8\r\n
293 293 s> \x00\x00\x00\x01\x00\x02\x002
294 294 s> \r\n
@@ -300,8 +300,13 b' Requesting revision data works'
300 300 b'totalitems': 1
301 301 },
302 302 {
303 b'node': b'\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xcc',
304 b'revisionsize': 3
303 b'fieldsfollowing': [
304 [
305 b'revision',
306 3
307 ]
308 ],
309 b'node': b'\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xcc'
305 310 },
306 311 b'a1\n'
307 312 ]
@@ -338,11 +343,11 b' haveparents=False should be same as abov'
338 343 s> \xa1FstatusBok
339 344 s> \r\n
340 345 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
341 s> 42\r\n
342 s> :\x00\x00\x01\x00\x02\x001
343 s> \xa1Jtotalitems\x01\xa2DnodeT\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xccLrevisionsize\x03Ca1\n
346 s> 50\r\n
347 s> H\x00\x00\x01\x00\x02\x001
348 s> \xa1Jtotalitems\x01\xa2Ofieldsfollowing\x81\x82Hrevision\x03DnodeT\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xccCa1\n
344 349 s> \r\n
345 received frame(size=58; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
350 received frame(size=72; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
346 351 s> 8\r\n
347 352 s> \x00\x00\x00\x01\x00\x02\x002
348 353 s> \r\n
@@ -354,8 +359,13 b' haveparents=False should be same as abov'
354 359 b'totalitems': 1
355 360 },
356 361 {
357 b'node': b'\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xcc',
358 b'revisionsize': 3
362 b'fieldsfollowing': [
363 [
364 b'revision',
365 3
366 ]
367 ],
368 b'node': b'\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xcc'
359 369 },
360 370 b'a1\n'
361 371 ]
@@ -392,12 +402,12 b' haveparents=True should emit a delta'
392 402 s> \xa1FstatusBok
393 403 s> \r\n
394 404 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
395 s> 6e\r\n
396 s> f\x00\x00\x01\x00\x02\x001
405 s> 7c\r\n
406 s> t\x00\x00\x01\x00\x02\x001
397 407 s> \xa1Jtotalitems\x01\xa3MdeltabasenodeT+N\xb0s\x19\xbf\xa0w\xa4\n
398 s> /\x04\x916Y\xae\xf0\xdaB\xdaIdeltasize\x0fDnodeT\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xccO\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x03a1\n
408 s> /\x04\x916Y\xae\xf0\xdaB\xdaOfieldsfollowing\x81\x82Edelta\x0fDnodeT\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xccO\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x03a1\n
399 409 s> \r\n
400 received frame(size=102; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
410 received frame(size=116; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
401 411 s> 8\r\n
402 412 s> \x00\x00\x00\x01\x00\x02\x002
403 413 s> \r\n
@@ -410,7 +420,12 b' haveparents=True should emit a delta'
410 420 },
411 421 {
412 422 b'deltabasenode': b'+N\xb0s\x19\xbf\xa0w\xa4\n/\x04\x916Y\xae\xf0\xdaB\xda',
413 b'deltasize': 15,
423 b'fieldsfollowing': [
424 [
425 b'delta',
426 15
427 ]
428 ],
414 429 b'node': b'\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xcc'
415 430 },
416 431 b'\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x03a1\n'
@@ -449,14 +464,14 b' Requesting multiple revisions works'
449 464 s> \xa1FstatusBok
450 465 s> \r\n
451 466 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
452 s> 9b\r\n
453 s> \x93\x00\x00\x01\x00\x02\x001
454 s> \xa1Jtotalitems\x02\xa2DnodeT+N\xb0s\x19\xbf\xa0w\xa4\n
455 s> /\x04\x916Y\xae\xf0\xdaB\xdaLrevisionsize\x03Ca0\n
467 s> b7\r\n
468 s> \xaf\x00\x00\x01\x00\x02\x001
469 s> \xa1Jtotalitems\x02\xa2Ofieldsfollowing\x81\x82Hrevision\x03DnodeT+N\xb0s\x19\xbf\xa0w\xa4\n
470 s> /\x04\x916Y\xae\xf0\xdaB\xdaCa0\n
456 471 s> \xa3MdeltabasenodeT+N\xb0s\x19\xbf\xa0w\xa4\n
457 s> /\x04\x916Y\xae\xf0\xdaB\xdaIdeltasize\x0fDnodeT\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xccO\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x03a1\n
472 s> /\x04\x916Y\xae\xf0\xdaB\xdaOfieldsfollowing\x81\x82Edelta\x0fDnodeT\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xccO\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x03a1\n
458 473 s> \r\n
459 received frame(size=147; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
474 received frame(size=175; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
460 475 s> 8\r\n
461 476 s> \x00\x00\x00\x01\x00\x02\x002
462 477 s> \r\n
@@ -468,13 +483,23 b' Requesting multiple revisions works'
468 483 b'totalitems': 2
469 484 },
470 485 {
471 b'node': b'+N\xb0s\x19\xbf\xa0w\xa4\n/\x04\x916Y\xae\xf0\xdaB\xda',
472 b'revisionsize': 3
486 b'fieldsfollowing': [
487 [
488 b'revision',
489 3
490 ]
491 ],
492 b'node': b'+N\xb0s\x19\xbf\xa0w\xa4\n/\x04\x916Y\xae\xf0\xdaB\xda'
473 493 },
474 494 b'a0\n',
475 495 {
476 496 b'deltabasenode': b'+N\xb0s\x19\xbf\xa0w\xa4\n/\x04\x916Y\xae\xf0\xdaB\xda',
477 b'deltasize': 15,
497 b'fieldsfollowing': [
498 [
499 b'delta',
500 15
501 ]
502 ],
478 503 b'node': b'\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xcc'
479 504 },
480 505 b'\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x03a1\n'
@@ -512,14 +537,14 b' Revisions are sorted by DAG order, paren'
512 537 s> \xa1FstatusBok
513 538 s> \r\n
514 539 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
515 s> 9b\r\n
516 s> \x93\x00\x00\x01\x00\x02\x001
517 s> \xa1Jtotalitems\x02\xa2DnodeT+N\xb0s\x19\xbf\xa0w\xa4\n
518 s> /\x04\x916Y\xae\xf0\xdaB\xdaLrevisionsize\x03Ca0\n
540 s> b7\r\n
541 s> \xaf\x00\x00\x01\x00\x02\x001
542 s> \xa1Jtotalitems\x02\xa2Ofieldsfollowing\x81\x82Hrevision\x03DnodeT+N\xb0s\x19\xbf\xa0w\xa4\n
543 s> /\x04\x916Y\xae\xf0\xdaB\xdaCa0\n
519 544 s> \xa3MdeltabasenodeT+N\xb0s\x19\xbf\xa0w\xa4\n
520 s> /\x04\x916Y\xae\xf0\xdaB\xdaIdeltasize\x0fDnodeT\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xccO\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x03a1\n
545 s> /\x04\x916Y\xae\xf0\xdaB\xdaOfieldsfollowing\x81\x82Edelta\x0fDnodeT\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xccO\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x03a1\n
521 546 s> \r\n
522 received frame(size=147; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
547 received frame(size=175; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
523 548 s> 8\r\n
524 549 s> \x00\x00\x00\x01\x00\x02\x002
525 550 s> \r\n
@@ -531,13 +556,23 b' Revisions are sorted by DAG order, paren'
531 556 b'totalitems': 2
532 557 },
533 558 {
534 b'node': b'+N\xb0s\x19\xbf\xa0w\xa4\n/\x04\x916Y\xae\xf0\xdaB\xda',
535 b'revisionsize': 3
559 b'fieldsfollowing': [
560 [
561 b'revision',
562 3
563 ]
564 ],
565 b'node': b'+N\xb0s\x19\xbf\xa0w\xa4\n/\x04\x916Y\xae\xf0\xdaB\xda'
536 566 },
537 567 b'a0\n',
538 568 {
539 569 b'deltabasenode': b'+N\xb0s\x19\xbf\xa0w\xa4\n/\x04\x916Y\xae\xf0\xdaB\xda',
540 b'deltasize': 15,
570 b'fieldsfollowing': [
571 [
572 b'delta',
573 15
574 ]
575 ],
541 576 b'node': b'\x9a8\x12)\x97\xb3\xac\x97\xbe*\x9a\xa2\xe5V\x83\x83A\xfd\xf2\xcc'
542 577 },
543 578 b'\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x03a1\n'
@@ -574,12 +609,12 b' Requesting parents and revision data wor'
574 609 s> \xa1FstatusBok
575 610 s> \r\n
576 611 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
577 s> 75\r\n
578 s> m\x00\x00\x01\x00\x02\x001
579 s> \xa1Jtotalitems\x01\xa3DnodeT\x08y4^97r)cKB\x0cc\x94T\x15g&\xc6\xb6Gparents\x82T+N\xb0s\x19\xbf\xa0w\xa4\n
580 s> /\x04\x916Y\xae\xf0\xdaB\xdaT\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00Lrevisionsize\x03Ca2\n
612 s> 83\r\n
613 s> {\x00\x00\x01\x00\x02\x001
614 s> \xa1Jtotalitems\x01\xa3Ofieldsfollowing\x81\x82Hrevision\x03DnodeT\x08y4^97r)cKB\x0cc\x94T\x15g&\xc6\xb6Gparents\x82T+N\xb0s\x19\xbf\xa0w\xa4\n
615 s> /\x04\x916Y\xae\xf0\xdaB\xdaT\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00Ca2\n
581 616 s> \r\n
582 received frame(size=109; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
617 received frame(size=123; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
583 618 s> 8\r\n
584 619 s> \x00\x00\x00\x01\x00\x02\x002
585 620 s> \r\n
@@ -591,12 +626,17 b' Requesting parents and revision data wor'
591 626 b'totalitems': 1
592 627 },
593 628 {
629 b'fieldsfollowing': [
630 [
631 b'revision',
632 3
633 ]
634 ],
594 635 b'node': b'\x08y4^97r)cKB\x0cc\x94T\x15g&\xc6\xb6',
595 636 b'parents': [
596 637 b'+N\xb0s\x19\xbf\xa0w\xa4\n/\x04\x916Y\xae\xf0\xdaB\xda',
597 638 b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
598 ],
599 b'revisionsize': 3
639 ]
600 640 },
601 641 b'a2\n'
602 642 ]
@@ -35,7 +35,7 b' All non-secret heads returned by default'
35 35 > EOF
36 36 creating http peer for wire protocol version 2
37 37 sending heads command
38 s> POST /api/exp-http-v2-0001/ro/heads HTTP/1.1\r\n
38 s> POST /api/exp-http-v2-0002/ro/heads HTTP/1.1\r\n
39 39 s> Accept-Encoding: identity\r\n
40 40 s> accept: application/mercurial-exp-framing-0005\r\n
41 41 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -81,7 +81,7 b' Requesting just the public heads works'
81 81 > EOF
82 82 creating http peer for wire protocol version 2
83 83 sending heads command
84 s> POST /api/exp-http-v2-0001/ro/heads HTTP/1.1\r\n
84 s> POST /api/exp-http-v2-0002/ro/heads HTTP/1.1\r\n
85 85 s> Accept-Encoding: identity\r\n
86 86 s> accept: application/mercurial-exp-framing-0005\r\n
87 87 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -27,7 +27,7 b' No arguments returns something reasonabl'
27 27 > EOF
28 28 creating http peer for wire protocol version 2
29 29 sending known command
30 s> POST /api/exp-http-v2-0001/ro/known HTTP/1.1\r\n
30 s> POST /api/exp-http-v2-0002/ro/known HTTP/1.1\r\n
31 31 s> Accept-Encoding: identity\r\n
32 32 s> accept: application/mercurial-exp-framing-0005\r\n
33 33 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -69,7 +69,7 b' Single known node works'
69 69 > EOF
70 70 creating http peer for wire protocol version 2
71 71 sending known command
72 s> POST /api/exp-http-v2-0001/ro/known HTTP/1.1\r\n
72 s> POST /api/exp-http-v2-0002/ro/known HTTP/1.1\r\n
73 73 s> Accept-Encoding: identity\r\n
74 74 s> accept: application/mercurial-exp-framing-0005\r\n
75 75 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -113,7 +113,7 b' Multiple nodes works'
113 113 > EOF
114 114 creating http peer for wire protocol version 2
115 115 sending known command
116 s> POST /api/exp-http-v2-0001/ro/known HTTP/1.1\r\n
116 s> POST /api/exp-http-v2-0002/ro/known HTTP/1.1\r\n
117 117 s> Accept-Encoding: identity\r\n
118 118 s> accept: application/mercurial-exp-framing-0005\r\n
119 119 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -31,7 +31,7 b' Request for namespaces works'
31 31 > EOF
32 32 creating http peer for wire protocol version 2
33 33 sending listkeys command
34 s> POST /api/exp-http-v2-0001/ro/listkeys HTTP/1.1\r\n
34 s> POST /api/exp-http-v2-0002/ro/listkeys HTTP/1.1\r\n
35 35 s> Accept-Encoding: identity\r\n
36 36 s> accept: application/mercurial-exp-framing-0005\r\n
37 37 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -77,7 +77,7 b' Request for phases works'
77 77 > EOF
78 78 creating http peer for wire protocol version 2
79 79 sending listkeys command
80 s> POST /api/exp-http-v2-0001/ro/listkeys HTTP/1.1\r\n
80 s> POST /api/exp-http-v2-0002/ro/listkeys HTTP/1.1\r\n
81 81 s> Accept-Encoding: identity\r\n
82 82 s> accept: application/mercurial-exp-framing-0005\r\n
83 83 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -122,7 +122,7 b' Request for bookmarks works'
122 122 > EOF
123 123 creating http peer for wire protocol version 2
124 124 sending listkeys command
125 s> POST /api/exp-http-v2-0001/ro/listkeys HTTP/1.1\r\n
125 s> POST /api/exp-http-v2-0002/ro/listkeys HTTP/1.1\r\n
126 126 s> Accept-Encoding: identity\r\n
127 127 s> accept: application/mercurial-exp-framing-0005\r\n
128 128 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -49,7 +49,7 b' Missing arguments is an error'
49 49 > EOF
50 50 creating http peer for wire protocol version 2
51 51 sending manifestdata command
52 s> POST /api/exp-http-v2-0001/ro/manifestdata HTTP/1.1\r\n
52 s> POST /api/exp-http-v2-0002/ro/manifestdata HTTP/1.1\r\n
53 53 s> Accept-Encoding: identity\r\n
54 54 s> accept: application/mercurial-exp-framing-0005\r\n
55 55 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -81,7 +81,7 b' Missing arguments is an error'
81 81 > EOF
82 82 creating http peer for wire protocol version 2
83 83 sending manifestdata command
84 s> POST /api/exp-http-v2-0001/ro/manifestdata HTTP/1.1\r\n
84 s> POST /api/exp-http-v2-0002/ro/manifestdata HTTP/1.1\r\n
85 85 s> Accept-Encoding: identity\r\n
86 86 s> accept: application/mercurial-exp-framing-0005\r\n
87 87 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -116,7 +116,7 b' Unknown node is an error'
116 116 > EOF
117 117 creating http peer for wire protocol version 2
118 118 sending manifestdata command
119 s> POST /api/exp-http-v2-0001/ro/manifestdata HTTP/1.1\r\n
119 s> POST /api/exp-http-v2-0002/ro/manifestdata HTTP/1.1\r\n
120 120 s> Accept-Encoding: identity\r\n
121 121 s> accept: application/mercurial-exp-framing-0005\r\n
122 122 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -151,7 +151,7 b' Fetching a single revision returns just '
151 151 > EOF
152 152 creating http peer for wire protocol version 2
153 153 sending manifestdata command
154 s> POST /api/exp-http-v2-0001/ro/manifestdata HTTP/1.1\r\n
154 s> POST /api/exp-http-v2-0002/ro/manifestdata HTTP/1.1\r\n
155 155 s> Accept-Encoding: identity\r\n
156 156 s> accept: application/mercurial-exp-framing-0005\r\n
157 157 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -202,7 +202,7 b' Requesting parents works'
202 202 > EOF
203 203 creating http peer for wire protocol version 2
204 204 sending manifestdata command
205 s> POST /api/exp-http-v2-0001/ro/manifestdata HTTP/1.1\r\n
205 s> POST /api/exp-http-v2-0002/ro/manifestdata HTTP/1.1\r\n
206 206 s> Accept-Encoding: identity\r\n
207 207 s> accept: application/mercurial-exp-framing-0005\r\n
208 208 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -258,7 +258,7 b' Requesting revision data works'
258 258 > EOF
259 259 creating http peer for wire protocol version 2
260 260 sending manifestdata command
261 s> POST /api/exp-http-v2-0001/ro/manifestdata HTTP/1.1\r\n
261 s> POST /api/exp-http-v2-0002/ro/manifestdata HTTP/1.1\r\n
262 262 s> Accept-Encoding: identity\r\n
263 263 s> accept: application/mercurial-exp-framing-0005\r\n
264 264 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -279,16 +279,16 b' Requesting revision data works'
279 279 s> \xa1FstatusBok
280 280 s> \r\n
281 281 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
282 s> 167\r\n
283 s> _\x01\x00\x01\x00\x02\x001
284 s> \xa1Jtotalitems\x01\xa2DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0Lrevisionsize\x19\x01$Y\x01$a\x000879345e39377229634b420c639454156726c6b6\n
282 s> 175\r\n
283 s> m\x01\x00\x01\x00\x02\x001
284 s> \xa1Jtotalitems\x01\xa2Ofieldsfollowing\x81\x82Hrevision\x19\x01$DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0Y\x01$a\x000879345e39377229634b420c639454156726c6b6\n
285 285 s> b\x00819e258d31a5e1606629f365bb902a1b21ee4216\n
286 286 s> dir0/c\x00914445346a0ca0629bd47ceb5dfe07e4d4cf2501\n
287 287 s> dir0/child0/e\x00bbba6c06b30f443d34ff841bc985c4d0827c6be4\n
288 288 s> dir0/child1/f\x0012fc7dcd773b5a0a929ce195228083c6ddc9cec4\n
289 289 s> dir0/d\x00538206dc971e521540d6843abfe6d16032f6d426\n
290 290 s> \r\n
291 received frame(size=351; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
291 received frame(size=365; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
292 292 s> 8\r\n
293 293 s> \x00\x00\x00\x01\x00\x02\x002
294 294 s> \r\n
@@ -300,8 +300,13 b' Requesting revision data works'
300 300 b'totalitems': 1
301 301 },
302 302 {
303 b'node': b'F\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0',
304 b'revisionsize': 292
303 b'fieldsfollowing': [
304 [
305 b'revision',
306 292
307 ]
308 ],
309 b'node': b'F\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0'
305 310 },
306 311 b'a\x000879345e39377229634b420c639454156726c6b6\nb\x00819e258d31a5e1606629f365bb902a1b21ee4216\ndir0/c\x00914445346a0ca0629bd47ceb5dfe07e4d4cf2501\ndir0/child0/e\x00bbba6c06b30f443d34ff841bc985c4d0827c6be4\ndir0/child1/f\x0012fc7dcd773b5a0a929ce195228083c6ddc9cec4\ndir0/d\x00538206dc971e521540d6843abfe6d16032f6d426\n'
307 312 ]
@@ -317,7 +322,7 b' haveparents=False yields same output'
317 322 > EOF
318 323 creating http peer for wire protocol version 2
319 324 sending manifestdata command
320 s> POST /api/exp-http-v2-0001/ro/manifestdata HTTP/1.1\r\n
325 s> POST /api/exp-http-v2-0002/ro/manifestdata HTTP/1.1\r\n
321 326 s> Accept-Encoding: identity\r\n
322 327 s> accept: application/mercurial-exp-framing-0005\r\n
323 328 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -338,16 +343,16 b' haveparents=False yields same output'
338 343 s> \xa1FstatusBok
339 344 s> \r\n
340 345 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
341 s> 167\r\n
342 s> _\x01\x00\x01\x00\x02\x001
343 s> \xa1Jtotalitems\x01\xa2DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0Lrevisionsize\x19\x01$Y\x01$a\x000879345e39377229634b420c639454156726c6b6\n
346 s> 175\r\n
347 s> m\x01\x00\x01\x00\x02\x001
348 s> \xa1Jtotalitems\x01\xa2Ofieldsfollowing\x81\x82Hrevision\x19\x01$DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0Y\x01$a\x000879345e39377229634b420c639454156726c6b6\n
344 349 s> b\x00819e258d31a5e1606629f365bb902a1b21ee4216\n
345 350 s> dir0/c\x00914445346a0ca0629bd47ceb5dfe07e4d4cf2501\n
346 351 s> dir0/child0/e\x00bbba6c06b30f443d34ff841bc985c4d0827c6be4\n
347 352 s> dir0/child1/f\x0012fc7dcd773b5a0a929ce195228083c6ddc9cec4\n
348 353 s> dir0/d\x00538206dc971e521540d6843abfe6d16032f6d426\n
349 354 s> \r\n
350 received frame(size=351; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
355 received frame(size=365; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
351 356 s> 8\r\n
352 357 s> \x00\x00\x00\x01\x00\x02\x002
353 358 s> \r\n
@@ -359,8 +364,13 b' haveparents=False yields same output'
359 364 b'totalitems': 1
360 365 },
361 366 {
362 b'node': b'F\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0',
363 b'revisionsize': 292
367 b'fieldsfollowing': [
368 [
369 b'revision',
370 292
371 ]
372 ],
373 b'node': b'F\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0'
364 374 },
365 375 b'a\x000879345e39377229634b420c639454156726c6b6\nb\x00819e258d31a5e1606629f365bb902a1b21ee4216\ndir0/c\x00914445346a0ca0629bd47ceb5dfe07e4d4cf2501\ndir0/child0/e\x00bbba6c06b30f443d34ff841bc985c4d0827c6be4\ndir0/child1/f\x0012fc7dcd773b5a0a929ce195228083c6ddc9cec4\ndir0/d\x00538206dc971e521540d6843abfe6d16032f6d426\n'
366 376 ]
@@ -376,7 +386,7 b' haveparents=True will emit delta'
376 386 > EOF
377 387 creating http peer for wire protocol version 2
378 388 sending manifestdata command
379 s> POST /api/exp-http-v2-0001/ro/manifestdata HTTP/1.1\r\n
389 s> POST /api/exp-http-v2-0002/ro/manifestdata HTTP/1.1\r\n
380 390 s> Accept-Encoding: identity\r\n
381 391 s> accept: application/mercurial-exp-framing-0005\r\n
382 392 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -397,11 +407,11 b' haveparents=True will emit delta'
397 407 s> \xa1FstatusBok
398 408 s> \r\n
399 409 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
400 s> 98\r\n
401 s> \x90\x00\x00\x01\x00\x02\x001
402 s> \xa1Jtotalitems\x01\xa3MdeltabasenodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Ideltasize\x187DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0X7\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n
410 s> a6\r\n
411 s> \x9e\x00\x00\x01\x00\x02\x001
412 s> \xa1Jtotalitems\x01\xa3MdeltabasenodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Ofieldsfollowing\x81\x82Edelta\x187DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0X7\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n
403 413 s> \r\n
404 received frame(size=144; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
414 received frame(size=158; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
405 415 s> 8\r\n
406 416 s> \x00\x00\x00\x01\x00\x02\x002
407 417 s> \r\n
@@ -414,7 +424,12 b' haveparents=True will emit delta'
414 424 },
415 425 {
416 426 b'deltabasenode': b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4',
417 b'deltasize': 55,
427 b'fieldsfollowing': [
428 [
429 b'delta',
430 55
431 ]
432 ],
418 433 b'node': b'F\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0'
419 434 },
420 435 b'\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n'
@@ -432,7 +447,7 b' has been emitted)'
432 447 > EOF
433 448 creating http peer for wire protocol version 2
434 449 sending manifestdata command
435 s> POST /api/exp-http-v2-0001/ro/manifestdata HTTP/1.1\r\n
450 s> POST /api/exp-http-v2-0002/ro/manifestdata HTTP/1.1\r\n
436 451 s> Accept-Encoding: identity\r\n
437 452 s> accept: application/mercurial-exp-framing-0005\r\n
438 453 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -453,17 +468,17 b' has been emitted)'
453 468 s> \xa1FstatusBok
454 469 s> \r\n
455 470 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
456 s> 1ea\r\n
457 s> \xe2\x01\x00\x01\x00\x02\x001
458 s> \xa1Jtotalitems\x02\xa2DnodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Lrevisionsize\x19\x01$Y\x01$a\x002b4eb07319bfa077a40a2f04913659aef0da42da\n
471 s> 206\r\n
472 s> \xfe\x01\x00\x01\x00\x02\x001
473 s> \xa1Jtotalitems\x02\xa2Ofieldsfollowing\x81\x82Hrevision\x19\x01$DnodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Y\x01$a\x002b4eb07319bfa077a40a2f04913659aef0da42da\n
459 474 s> b\x00819e258d31a5e1606629f365bb902a1b21ee4216\n
460 475 s> dir0/c\x00914445346a0ca0629bd47ceb5dfe07e4d4cf2501\n
461 476 s> dir0/child0/e\x00bbba6c06b30f443d34ff841bc985c4d0827c6be4\n
462 477 s> dir0/child1/f\x0012fc7dcd773b5a0a929ce195228083c6ddc9cec4\n
463 478 s> dir0/d\x00538206dc971e521540d6843abfe6d16032f6d426\n
464 s> \xa3MdeltabasenodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Ideltasize\x187DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0X7\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n
479 s> \xa3MdeltabasenodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Ofieldsfollowing\x81\x82Edelta\x187DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0X7\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n
465 480 s> \r\n
466 received frame(size=482; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
481 received frame(size=510; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
467 482 s> 8\r\n
468 483 s> \x00\x00\x00\x01\x00\x02\x002
469 484 s> \r\n
@@ -475,13 +490,23 b' has been emitted)'
475 490 b'totalitems': 2
476 491 },
477 492 {
478 b'node': b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4',
479 b'revisionsize': 292
493 b'fieldsfollowing': [
494 [
495 b'revision',
496 292
497 ]
498 ],
499 b'node': b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4'
480 500 },
481 501 b'a\x002b4eb07319bfa077a40a2f04913659aef0da42da\nb\x00819e258d31a5e1606629f365bb902a1b21ee4216\ndir0/c\x00914445346a0ca0629bd47ceb5dfe07e4d4cf2501\ndir0/child0/e\x00bbba6c06b30f443d34ff841bc985c4d0827c6be4\ndir0/child1/f\x0012fc7dcd773b5a0a929ce195228083c6ddc9cec4\ndir0/d\x00538206dc971e521540d6843abfe6d16032f6d426\n',
482 502 {
483 503 b'deltabasenode': b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4',
484 b'deltasize': 55,
504 b'fieldsfollowing': [
505 [
506 b'delta',
507 55
508 ]
509 ],
485 510 b'node': b'F\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0'
486 511 },
487 512 b'\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n'
@@ -498,7 +523,7 b' With haveparents=True, first revision is'
498 523 > EOF
499 524 creating http peer for wire protocol version 2
500 525 sending manifestdata command
501 s> POST /api/exp-http-v2-0001/ro/manifestdata HTTP/1.1\r\n
526 s> POST /api/exp-http-v2-0002/ro/manifestdata HTTP/1.1\r\n
502 527 s> Accept-Encoding: identity\r\n
503 528 s> accept: application/mercurial-exp-framing-0005\r\n
504 529 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -519,17 +544,17 b' With haveparents=True, first revision is'
519 544 s> \xa1FstatusBok
520 545 s> \r\n
521 546 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
522 s> 1ea\r\n
523 s> \xe2\x01\x00\x01\x00\x02\x001
524 s> \xa1Jtotalitems\x02\xa2DnodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Lrevisionsize\x19\x01$Y\x01$a\x002b4eb07319bfa077a40a2f04913659aef0da42da\n
547 s> 206\r\n
548 s> \xfe\x01\x00\x01\x00\x02\x001
549 s> \xa1Jtotalitems\x02\xa2Ofieldsfollowing\x81\x82Hrevision\x19\x01$DnodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Y\x01$a\x002b4eb07319bfa077a40a2f04913659aef0da42da\n
525 550 s> b\x00819e258d31a5e1606629f365bb902a1b21ee4216\n
526 551 s> dir0/c\x00914445346a0ca0629bd47ceb5dfe07e4d4cf2501\n
527 552 s> dir0/child0/e\x00bbba6c06b30f443d34ff841bc985c4d0827c6be4\n
528 553 s> dir0/child1/f\x0012fc7dcd773b5a0a929ce195228083c6ddc9cec4\n
529 554 s> dir0/d\x00538206dc971e521540d6843abfe6d16032f6d426\n
530 s> \xa3MdeltabasenodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Ideltasize\x187DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0X7\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n
555 s> \xa3MdeltabasenodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Ofieldsfollowing\x81\x82Edelta\x187DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0X7\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n
531 556 s> \r\n
532 received frame(size=482; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
557 received frame(size=510; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
533 558 s> 8\r\n
534 559 s> \x00\x00\x00\x01\x00\x02\x002
535 560 s> \r\n
@@ -541,13 +566,23 b' With haveparents=True, first revision is'
541 566 b'totalitems': 2
542 567 },
543 568 {
544 b'node': b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4',
545 b'revisionsize': 292
569 b'fieldsfollowing': [
570 [
571 b'revision',
572 292
573 ]
574 ],
575 b'node': b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4'
546 576 },
547 577 b'a\x002b4eb07319bfa077a40a2f04913659aef0da42da\nb\x00819e258d31a5e1606629f365bb902a1b21ee4216\ndir0/c\x00914445346a0ca0629bd47ceb5dfe07e4d4cf2501\ndir0/child0/e\x00bbba6c06b30f443d34ff841bc985c4d0827c6be4\ndir0/child1/f\x0012fc7dcd773b5a0a929ce195228083c6ddc9cec4\ndir0/d\x00538206dc971e521540d6843abfe6d16032f6d426\n',
548 578 {
549 579 b'deltabasenode': b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4',
550 b'deltasize': 55,
580 b'fieldsfollowing': [
581 [
582 b'delta',
583 55
584 ]
585 ],
551 586 b'node': b'F\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0'
552 587 },
553 588 b'\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n'
@@ -563,7 +598,7 b' Revisions are sorted by DAG order, paren'
563 598 > EOF
564 599 creating http peer for wire protocol version 2
565 600 sending manifestdata command
566 s> POST /api/exp-http-v2-0001/ro/manifestdata HTTP/1.1\r\n
601 s> POST /api/exp-http-v2-0002/ro/manifestdata HTTP/1.1\r\n
567 602 s> Accept-Encoding: identity\r\n
568 603 s> accept: application/mercurial-exp-framing-0005\r\n
569 604 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -584,17 +619,17 b' Revisions are sorted by DAG order, paren'
584 619 s> \xa1FstatusBok
585 620 s> \r\n
586 621 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
587 s> 1ea\r\n
588 s> \xe2\x01\x00\x01\x00\x02\x001
589 s> \xa1Jtotalitems\x02\xa2DnodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Lrevisionsize\x19\x01$Y\x01$a\x002b4eb07319bfa077a40a2f04913659aef0da42da\n
622 s> 206\r\n
623 s> \xfe\x01\x00\x01\x00\x02\x001
624 s> \xa1Jtotalitems\x02\xa2Ofieldsfollowing\x81\x82Hrevision\x19\x01$DnodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Y\x01$a\x002b4eb07319bfa077a40a2f04913659aef0da42da\n
590 625 s> b\x00819e258d31a5e1606629f365bb902a1b21ee4216\n
591 626 s> dir0/c\x00914445346a0ca0629bd47ceb5dfe07e4d4cf2501\n
592 627 s> dir0/child0/e\x00bbba6c06b30f443d34ff841bc985c4d0827c6be4\n
593 628 s> dir0/child1/f\x0012fc7dcd773b5a0a929ce195228083c6ddc9cec4\n
594 629 s> dir0/d\x00538206dc971e521540d6843abfe6d16032f6d426\n
595 s> \xa3MdeltabasenodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Ideltasize\x187DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0X7\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n
630 s> \xa3MdeltabasenodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Ofieldsfollowing\x81\x82Edelta\x187DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0X7\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n
596 631 s> \r\n
597 received frame(size=482; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
632 received frame(size=510; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
598 633 s> 8\r\n
599 634 s> \x00\x00\x00\x01\x00\x02\x002
600 635 s> \r\n
@@ -606,13 +641,23 b' Revisions are sorted by DAG order, paren'
606 641 b'totalitems': 2
607 642 },
608 643 {
609 b'node': b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4',
610 b'revisionsize': 292
644 b'fieldsfollowing': [
645 [
646 b'revision',
647 292
648 ]
649 ],
650 b'node': b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4'
611 651 },
612 652 b'a\x002b4eb07319bfa077a40a2f04913659aef0da42da\nb\x00819e258d31a5e1606629f365bb902a1b21ee4216\ndir0/c\x00914445346a0ca0629bd47ceb5dfe07e4d4cf2501\ndir0/child0/e\x00bbba6c06b30f443d34ff841bc985c4d0827c6be4\ndir0/child1/f\x0012fc7dcd773b5a0a929ce195228083c6ddc9cec4\ndir0/d\x00538206dc971e521540d6843abfe6d16032f6d426\n',
613 653 {
614 654 b'deltabasenode': b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4',
615 b'deltasize': 55,
655 b'fieldsfollowing': [
656 [
657 b'delta',
658 55
659 ]
660 ],
616 661 b'node': b'F\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0'
617 662 },
618 663 b'\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n'
@@ -628,7 +673,7 b' Requesting parents and revision data wor'
628 673 > EOF
629 674 creating http peer for wire protocol version 2
630 675 sending manifestdata command
631 s> POST /api/exp-http-v2-0001/ro/manifestdata HTTP/1.1\r\n
676 s> POST /api/exp-http-v2-0002/ro/manifestdata HTTP/1.1\r\n
632 677 s> Accept-Encoding: identity\r\n
633 678 s> accept: application/mercurial-exp-framing-0005\r\n
634 679 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -649,17 +694,17 b' Requesting parents and revision data wor'
649 694 s> \xa1FstatusBok
650 695 s> \r\n
651 696 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
652 s> 250\r\n
653 s> H\x02\x00\x01\x00\x02\x001
654 s> \xa1Jtotalitems\x02\xa3DnodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Gparents\x82T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00Lrevisionsize\x19\x01$Y\x01$a\x002b4eb07319bfa077a40a2f04913659aef0da42da\n
697 s> 26c\r\n
698 s> d\x02\x00\x01\x00\x02\x001
699 s> \xa1Jtotalitems\x02\xa3Ofieldsfollowing\x81\x82Hrevision\x19\x01$DnodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Gparents\x82T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00Y\x01$a\x002b4eb07319bfa077a40a2f04913659aef0da42da\n
655 700 s> b\x00819e258d31a5e1606629f365bb902a1b21ee4216\n
656 701 s> dir0/c\x00914445346a0ca0629bd47ceb5dfe07e4d4cf2501\n
657 702 s> dir0/child0/e\x00bbba6c06b30f443d34ff841bc985c4d0827c6be4\n
658 703 s> dir0/child1/f\x0012fc7dcd773b5a0a929ce195228083c6ddc9cec4\n
659 704 s> dir0/d\x00538206dc971e521540d6843abfe6d16032f6d426\n
660 s> \xa4MdeltabasenodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Ideltasize\x187DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0Gparents\x82T\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00X7\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n
705 s> \xa4MdeltabasenodeT\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4Ofieldsfollowing\x81\x82Edelta\x187DnodeTF\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0Gparents\x82T\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4T\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00X7\x00\x00\x00\x00\x00\x00\x00+\x00\x00\x00+a\x000879345e39377229634b420c639454156726c6b6\n
661 706 s> \r\n
662 received frame(size=584; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
707 received frame(size=612; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
663 708 s> 8\r\n
664 709 s> \x00\x00\x00\x01\x00\x02\x002
665 710 s> \r\n
@@ -671,17 +716,27 b' Requesting parents and revision data wor'
671 716 b'totalitems': 2
672 717 },
673 718 {
719 b'fieldsfollowing': [
720 [
721 b'revision',
722 292
723 ]
724 ],
674 725 b'node': b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4',
675 726 b'parents': [
676 727 b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00',
677 728 b'\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
678 ],
679 b'revisionsize': 292
729 ]
680 730 },
681 731 b'a\x002b4eb07319bfa077a40a2f04913659aef0da42da\nb\x00819e258d31a5e1606629f365bb902a1b21ee4216\ndir0/c\x00914445346a0ca0629bd47ceb5dfe07e4d4cf2501\ndir0/child0/e\x00bbba6c06b30f443d34ff841bc985c4d0827c6be4\ndir0/child1/f\x0012fc7dcd773b5a0a929ce195228083c6ddc9cec4\ndir0/d\x00538206dc971e521540d6843abfe6d16032f6d426\n',
682 732 {
683 733 b'deltabasenode': b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4',
684 b'deltasize': 55,
734 b'fieldsfollowing': [
735 [
736 b'delta',
737 55
738 ]
739 ],
685 740 b'node': b'F\xa6r\x1b^\xda\xf0\xea\x04\xb7\x9a\\\xb3!\x88T\xa4\xd2\xab\xa0',
686 741 b'parents': [
687 742 b'\x1b\x17[Y_\x02,\xfa\xb5\xb8\t\xcc\x0e\xd5Q\xbd\x0b?\xf5\xe4',
@@ -70,7 +70,7 b' pushkey for a bookmark works'
70 70 > EOF
71 71 creating http peer for wire protocol version 2
72 72 sending listkeys command
73 s> POST /api/exp-http-v2-0001/ro/listkeys HTTP/1.1\r\n
73 s> POST /api/exp-http-v2-0002/ro/listkeys HTTP/1.1\r\n
74 74 s> Accept-Encoding: identity\r\n
75 75 s> accept: application/mercurial-exp-framing-0005\r\n
76 76 s> content-type: application/mercurial-exp-framing-0005\r\n
@@ -68,7 +68,7 b' Test basic clone'
68 68 ]
69 69 }
70 70 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
71 received frame(size=871; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
71 received frame(size=941; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
72 72 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos)
73 73 add changeset 3390ef850073
74 74 add changeset 4432d83626e8
@@ -93,7 +93,7 b' Test basic clone'
93 93 'tree': ''
94 94 }
95 95 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
96 received frame(size=922; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
96 received frame(size=992; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
97 97 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos)
98 98 sending 2 commands
99 99 sending command filedata: {
@@ -123,10 +123,10 b' Test basic clone'
123 123 'path': 'b'
124 124 }
125 125 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
126 received frame(size=389; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
126 received frame(size=431; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
127 127 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos)
128 128 received frame(size=11; request=3; stream=2; streamflags=; type=command-response; flags=continuation)
129 received frame(size=389; request=3; stream=2; streamflags=; type=command-response; flags=continuation)
129 received frame(size=431; request=3; stream=2; streamflags=; type=command-response; flags=continuation)
130 130 received frame(size=0; request=3; stream=2; streamflags=; type=command-response; flags=eos)
131 131 updating the branch cache
132 132 new changesets 3390ef850073:caa2a465451d (3 drafts)
@@ -203,7 +203,7 b' Cloning only a specific revision works'
203 203 ]
204 204 }
205 205 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
206 received frame(size=353; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
206 received frame(size=381; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
207 207 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos)
208 208 add changeset 3390ef850073
209 209 add changeset 4432d83626e8
@@ -222,7 +222,7 b' Cloning only a specific revision works'
222 222 'tree': ''
223 223 }
224 224 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
225 received frame(size=376; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
225 received frame(size=404; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
226 226 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos)
227 227 sending 2 commands
228 228 sending command filedata: {
@@ -249,10 +249,10 b' Cloning only a specific revision works'
249 249 'path': 'b'
250 250 }
251 251 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
252 received frame(size=249; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
252 received frame(size=277; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
253 253 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos)
254 254 received frame(size=11; request=3; stream=2; streamflags=; type=command-response; flags=continuation)
255 received frame(size=109; request=3; stream=2; streamflags=; type=command-response; flags=continuation)
255 received frame(size=123; request=3; stream=2; streamflags=; type=command-response; flags=continuation)
256 256 received frame(size=0; request=3; stream=2; streamflags=; type=command-response; flags=eos)
257 257 updating the branch cache
258 258 new changesets 3390ef850073:4432d83626e8
@@ -311,7 +311,7 b' Incremental pull works'
311 311 ]
312 312 }
313 313 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
314 received frame(size=571; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
314 received frame(size=613; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
315 315 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos)
316 316 add changeset cd2534766bec
317 317 add changeset e96ae20f4188
@@ -332,7 +332,7 b' Incremental pull works'
332 332 'tree': ''
333 333 }
334 334 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
335 received frame(size=559; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
335 received frame(size=601; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
336 336 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos)
337 337 sending 2 commands
338 338 sending command filedata: {
@@ -361,10 +361,10 b' Incremental pull works'
361 361 'path': 'b'
362 362 }
363 363 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
364 received frame(size=249; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
364 received frame(size=277; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
365 365 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos)
366 366 received frame(size=11; request=3; stream=2; streamflags=; type=command-response; flags=continuation)
367 received frame(size=389; request=3; stream=2; streamflags=; type=command-response; flags=continuation)
367 received frame(size=431; request=3; stream=2; streamflags=; type=command-response; flags=continuation)
368 368 received frame(size=0; request=3; stream=2; streamflags=; type=command-response; flags=eos)
369 369 updating the branch cache
370 370 new changesets cd2534766bec:caa2a465451d (3 drafts)
@@ -491,7 +491,7 b' Bookmarks are transferred on clone'
491 491 ]
492 492 }
493 493 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
494 received frame(size=909; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
494 received frame(size=979; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
495 495 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos)
496 496 add changeset 3390ef850073
497 497 add changeset 4432d83626e8
@@ -518,7 +518,7 b' Bookmarks are transferred on clone'
518 518 'tree': ''
519 519 }
520 520 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
521 received frame(size=922; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
521 received frame(size=992; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
522 522 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos)
523 523 sending 2 commands
524 524 sending command filedata: {
@@ -548,10 +548,10 b' Bookmarks are transferred on clone'
548 548 'path': 'b'
549 549 }
550 550 received frame(size=11; request=1; stream=2; streamflags=stream-begin; type=command-response; flags=continuation)
551 received frame(size=389; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
551 received frame(size=431; request=1; stream=2; streamflags=; type=command-response; flags=continuation)
552 552 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos)
553 553 received frame(size=11; request=3; stream=2; streamflags=; type=command-response; flags=continuation)
554 received frame(size=389; request=3; stream=2; streamflags=; type=command-response; flags=continuation)
554 received frame(size=431; request=3; stream=2; streamflags=; type=command-response; flags=continuation)
555 555 received frame(size=0; request=3; stream=2; streamflags=; type=command-response; flags=eos)
556 556 updating the branch cache
557 557 new changesets 3390ef850073:caa2a465451d (1 drafts)
@@ -1,4 +1,4 b''
1 HTTPV2=exp-http-v2-0001
1 HTTPV2=exp-http-v2-0002
2 2 MEDIATYPE=application/mercurial-exp-framing-0005
3 3
4 4 sendhttpraw() {
General Comments 0
You need to be logged in to leave comments. Login now