tests/test-http-proxy.t
author Gregory Szorc <gregory.szorc@gmail.com>
Tue, 28 Aug 2018 15:02:48 -0700
changeset 39411 aeb551a3bb8a
parent 37556 b77aa48ba690
child 39489 f1186c292d03
permissions -rw-r--r--
cborutil: implement sans I/O decoder The vendored CBOR package decodes by calling read(n) on an object. There are a number of disadvantages to this: * Uses blocking I/O. If sufficient data is not available, the decoder will hang until it is. * No support for partial reads. If the read(n) returns less data than requested, the decoder raises an error. * Requires the use of a file like object. If the original data is in say a buffer, we need to "cast" it to e.g. a BytesIO to appease the decoder. In addition, the vendored CBOR decoder doesn't provide flexibility that we desire. Specifically: * It buffers indefinite length bytestrings instead of streaming them. * It doesn't allow limiting the set of types that can be decoded. This property is useful when implementing a "hardened" decoder that is less susceptible to abusive input. * It doesn't provide sufficient "hook points" and introspection to institute checks around behavior. These are useful for implementing a "hardened" decoder. This all adds up to a reasonable set of justifications for writing our own decoder. So, this commit implements our own CBOR decoder. At the heart of the decoder is a function that decodes a single "item" from a buffer. This item can be a complete simple value or a special value, such as "start of array." Using this function, we can build a decoder that effectively iterates over the stream of decoded items and builds up higher-level values, such as arrays, maps, sets, and indefinite length bytestrings. And we can do this without performing I/O in the decoder itself. The core of the sans I/O decoder will probably not be used directly. Instead, it is expected that we'll build utility functions for invoking the decoder given specific input types. This will allow extreme flexibility in how data is delivered to the decoder. I'm pretty happy with the state of the decoder modulo the TODO items to track wanted features to help with a "hardened" decoder. The one thing I could be convinced to change is the handling of semantic tags. Since we only support a single semantic tag (sets), I thought it would be easier to handle them inline in decodeitem(). This is simpler now. But if we add support for other semantic tags, it will likely be easier to move semantic tag handling outside of decodeitem(). But, properly supporting semantic tags opens up a whole can of worms, as many semantic tags imply new types. I'm optimistic we won't need these in Mercurial. But who knows. I'm also pretty happy with the test coverage. Writing comprehensive tests for partial decoding did flush out a handful of bugs. One general improvement to testing would be fuzz testing for partial decoding. I may implement that later. I also anticipate switching the wire protocol code to this new decoder will flush out any lingering bugs. Differential Revision: https://phab.mercurial-scm.org/D4414
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 17740
diff changeset
     1
#require serve
2337
3f24bc5dee81 http: fix many problems with url parsing and auth. added proxy test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
     2
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
     3
  $ hg init a
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
     4
  $ cd a
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
     5
  $ echo a > a
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
     6
  $ hg ci -Ama -d '1123456789 0'
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
     7
  adding a
28549
e01bd7385f4f tests: reorder hg serve commands
Jun Wu <quark@fb.com>
parents: 27752
diff changeset
     8
  $ hg serve --config server.uncompressed=True -p $HGPORT -d --pid-file=hg.pid
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
     9
  $ cat hg.pid >> $DAEMON_PIDS
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    10
  $ cd ..
32916
88c1d13b637b test-http-proxy: redirect proxy stdout to /dev/null
Matt Harbison <matt_harbison@yahoo.com>
parents: 32079
diff changeset
    11
  $ tinyproxy.py $HGPORT1 localhost 2>proxy.log >/dev/null </dev/null &
16496
abbabbbe4ec2 tests: use 'do sleep 0' instead of 'do true', also on first line of command
Mads Kiilerich <mads@kiilerich.com>
parents: 16301
diff changeset
    12
  $ while [ ! -f proxy.pid ]; do sleep 0; done
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    13
  $ cat proxy.pid >> $DAEMON_PIDS
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    14
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    15
url for proxy, stream
2337
3f24bc5dee81 http: fix many problems with url parsing and auth. added proxy test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    16
34393
fffd3369aa83 commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents: 34386
diff changeset
    17
  $ http_proxy=http://localhost:$HGPORT1/ hg --config http_proxy.always=True clone --stream http://localhost:$HGPORT/ b
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    18
  streaming all changes
37338
cbc4425e81b5 tests: conditionalize tests based on presence of revlogs for files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35268
diff changeset
    19
  3 files to transfer, 303 bytes of data (reporevlogstore !)
cbc4425e81b5 tests: conditionalize tests based on presence of revlogs for files
Gregory Szorc <gregory.szorc@gmail.com>
parents: 35268
diff changeset
    20
  4 files to transfer, 330 bytes of data (reposimplestore !)
14023
2cd1520664b8 tests: check for (*/sec) instead of (*B/sec) to match (X bytes/sec)
Thomas Arendsen Hein <thomas@intevation.de>
parents: 13364
diff changeset
    21
  transferred * bytes in * seconds (*/sec) (glob)
23116
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22648
diff changeset
    22
  searching for changes
2dc6b7917cdf clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents: 22648
diff changeset
    23
  no changes found
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    24
  updating to branch default
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    25
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    26
  $ cd b
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    27
  $ hg verify
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    28
  checking changesets
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    29
  checking manifests
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    30
  crosschecking files in changesets and manifests
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    31
  checking files
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    32
  1 files, 1 changesets, 1 total revisions
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    33
  $ cd ..
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    34
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    35
url for proxy, pull
2337
3f24bc5dee81 http: fix many problems with url parsing and auth. added proxy test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    36
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    37
  $ http_proxy=http://localhost:$HGPORT1/ hg --config http_proxy.always=True clone http://localhost:$HGPORT/ b-pull
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    38
  requesting all changes
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    39
  adding changesets
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    40
  adding manifests
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    41
  adding file changes
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    42
  added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
    43
  new changesets 83180e7845de
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    44
  updating to branch default
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    45
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    46
  $ cd b-pull
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    47
  $ hg verify
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    48
  checking changesets
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    49
  checking manifests
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    50
  crosschecking files in changesets and manifests
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    51
  checking files
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    52
  1 files, 1 changesets, 1 total revisions
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    53
  $ cd ..
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    54
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    55
host:port for proxy
2612
ffb895f16925 add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2571
diff changeset
    56
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    57
  $ http_proxy=localhost:$HGPORT1 hg clone --config http_proxy.always=True http://localhost:$HGPORT/ c
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    58
  requesting all changes
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    59
  adding changesets
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    60
  adding manifests
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    61
  adding file changes
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    62
  added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
    63
  new changesets 83180e7845de
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    64
  updating to branch default
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    65
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    66
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    67
proxy url with user name and password
2337
3f24bc5dee81 http: fix many problems with url parsing and auth. added proxy test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    68
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    69
  $ http_proxy=http://user:passwd@localhost:$HGPORT1 hg clone --config http_proxy.always=True http://localhost:$HGPORT/ d
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    70
  requesting all changes
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    71
  adding changesets
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    72
  adding manifests
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    73
  adding file changes
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    74
  added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
    75
  new changesets 83180e7845de
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    76
  updating to branch default
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    77
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
2337
3f24bc5dee81 http: fix many problems with url parsing and auth. added proxy test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    78
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    79
url with user name and password
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    80
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    81
  $ http_proxy=http://user:passwd@localhost:$HGPORT1 hg clone --config http_proxy.always=True http://user:passwd@localhost:$HGPORT/ e
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    82
  requesting all changes
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    83
  adding changesets
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    84
  adding manifests
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    85
  adding file changes
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    86
  added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
    87
  new changesets 83180e7845de
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    88
  updating to branch default
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    89
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
2337
3f24bc5dee81 http: fix many problems with url parsing and auth. added proxy test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    90
30851
7bfe02b57695 tests: also allow "Protocol not supported" in test-http-proxy error
Augie Fackler <augie@google.com>
parents: 30763
diff changeset
    91
bad host:port for proxy ("Protocol not supported" can happen on
7bfe02b57695 tests: also allow "Protocol not supported" in test-http-proxy error
Augie Fackler <augie@google.com>
parents: 30763
diff changeset
    92
misconfigured hosts)
2337
3f24bc5dee81 http: fix many problems with url parsing and auth. added proxy test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    93
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    94
  $ http_proxy=localhost:$HGPORT2 hg clone --config http_proxy.always=True http://localhost:$HGPORT/ f
32079
76ed60630dd5 tests: fix two http tests to also pass inside manylinux1 docker
Boris Feld <boris.feld@octobus.net>
parents: 31854
diff changeset
    95
  abort: error: (Connection refused|Protocol not supported|.* actively refused it|Cannot assign requested address) (re)
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    96
  [255]
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    97
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
    98
do not use the proxy if it is in the no list
2337
3f24bc5dee81 http: fix many problems with url parsing and auth. added proxy test.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff changeset
    99
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
   100
  $ http_proxy=localhost:$HGPORT1 hg clone --config http_proxy.no=localhost http://localhost:$HGPORT/ g
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
   101
  requesting all changes
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
   102
  adding changesets
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
   103
  adding manifests
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
   104
  adding file changes
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
   105
  added 1 changesets with 1 changes to 1 files
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 34393
diff changeset
   106
  new changesets 83180e7845de
12449
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
   107
  updating to branch default
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
   108
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
fc12114dbaa5 tests: unify test-http-proxy
Matt Mackall <mpm@selenic.com>
parents: 7919
diff changeset
   109
  $ cat proxy.log
37556
b77aa48ba690 httppeer: only advertise partial-pull if capabilities are known
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37498
diff changeset
   110
  * - - [*] "GET http://localhost:$HGPORT/?cmd=capabilities HTTP/1.1" - - (glob)
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37338
diff changeset
   111
  $LOCALIP - - [$LOGDATE$] "GET http://localhost:$HGPORT/?cmd=branchmap HTTP/1.1" - - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37338
diff changeset
   112
  $LOCALIP - - [$LOGDATE$] "GET http://localhost:$HGPORT/?cmd=stream_out HTTP/1.1" - - x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37338
diff changeset
   113
  $LOCALIP - - [$LOGDATE$] "GET http://localhost:$HGPORT/?cmd=batch HTTP/1.1" - - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D83180e7845de420a1bb46896fd5fe05294f8d629 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37338
diff changeset
   114
  $LOCALIP - - [$LOGDATE$] "GET http://localhost:$HGPORT/?cmd=getbundle HTTP/1.1" - - x-hgarg-1:bookmarks=1&$USUAL_BUNDLE_CAPS$&cg=0&common=83180e7845de420a1bb46896fd5fe05294f8d629&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
37556
b77aa48ba690 httppeer: only advertise partial-pull if capabilities are known
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37498
diff changeset
   115
  * - - [*] "GET http://localhost:$HGPORT/?cmd=capabilities HTTP/1.1" - - (glob)
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37338
diff changeset
   116
  $LOCALIP - - [$LOGDATE$] "GET http://localhost:$HGPORT/?cmd=batch HTTP/1.1" - - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37338
diff changeset
   117
  $LOCALIP - - [$LOGDATE$] "GET http://localhost:$HGPORT/?cmd=getbundle HTTP/1.1" - - x-hgarg-1:bookmarks=1&$USUAL_BUNDLE_CAPS$&cg=1&common=0000000000000000000000000000000000000000&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
37556
b77aa48ba690 httppeer: only advertise partial-pull if capabilities are known
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37498
diff changeset
   118
  * - - [*] "GET http://localhost:$HGPORT/?cmd=capabilities HTTP/1.1" - - (glob)
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37338
diff changeset
   119
  $LOCALIP - - [$LOGDATE$] "GET http://localhost:$HGPORT/?cmd=batch HTTP/1.1" - - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37338
diff changeset
   120
  $LOCALIP - - [$LOGDATE$] "GET http://localhost:$HGPORT/?cmd=getbundle HTTP/1.1" - - x-hgarg-1:bookmarks=1&$USUAL_BUNDLE_CAPS$&cg=1&common=0000000000000000000000000000000000000000&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
37556
b77aa48ba690 httppeer: only advertise partial-pull if capabilities are known
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37498
diff changeset
   121
  * - - [*] "GET http://localhost:$HGPORT/?cmd=capabilities HTTP/1.1" - - (glob)
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37338
diff changeset
   122
  $LOCALIP - - [$LOGDATE$] "GET http://localhost:$HGPORT/?cmd=batch HTTP/1.1" - - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37338
diff changeset
   123
  $LOCALIP - - [$LOGDATE$] "GET http://localhost:$HGPORT/?cmd=getbundle HTTP/1.1" - - x-hgarg-1:bookmarks=1&$USUAL_BUNDLE_CAPS$&cg=1&common=0000000000000000000000000000000000000000&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
37556
b77aa48ba690 httppeer: only advertise partial-pull if capabilities are known
Gregory Szorc <gregory.szorc@gmail.com>
parents: 37498
diff changeset
   124
  * - - [*] "GET http://localhost:$HGPORT/?cmd=capabilities HTTP/1.1" - - (glob)
37498
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37338
diff changeset
   125
  $LOCALIP - - [$LOGDATE$] "GET http://localhost:$HGPORT/?cmd=batch HTTP/1.1" - - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)
aacfca6f9767 wireproto: support for pullbundles
Joerg Sonnenberger <joerg@bec.de>
parents: 37338
diff changeset
   126
  $LOCALIP - - [$LOGDATE$] "GET http://localhost:$HGPORT/?cmd=getbundle HTTP/1.1" - - x-hgarg-1:bookmarks=1&$USUAL_BUNDLE_CAPS$&cg=1&common=0000000000000000000000000000000000000000&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ partial-pull (glob)