Mercurial > hg
annotate tests/test-wireproto-command-capabilities.t @ 40172:30f70d11c224
wireprotov2: advertise recommended batch size for requests
Currently, exchangev2 hardcodes the batch size for how many revisions
to fetch per command request. A single value is not appropriate
for every repository because some repositories may have a drastically
different "shape" from other repositories. e.g. a repo with lots of
small files may benefit from larger batch sizes than a repo with lots
of large files. And depending on caching used by the server, the server
may wish to control the number of commands (to e.g. mitigate overhead
of following content redirects).
This commit teaches wireprotov2 commands to declare extra metadata
which is advertised as part of the command descriptor. The manifestdata
command has been taught to advertise a recommended batch size for
requests.
Differential Revision: https://phab.mercurial-scm.org/D4975
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Mon, 08 Oct 2018 17:45:51 -0700 |
parents | b5bf3dd6ec5b |
children | 41263df08109 |
rev | line source |
---|---|
38021
538e850ae737
tests: mark tests that fail when using chg as #require no-chg
Kyle Lippincott <spectral@google.com>
parents:
37822
diff
changeset
|
1 #require no-chg |
538e850ae737
tests: mark tests that fail when using chg as #require no-chg
Kyle Lippincott <spectral@google.com>
parents:
37822
diff
changeset
|
2 |
37533
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
3 $ . $TESTDIR/wireprotohelpers.sh |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
4 |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
5 $ hg init server |
37822
da07c781aba9
tests: explicitly define compression engines for tests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37820
diff
changeset
|
6 |
da07c781aba9
tests: explicitly define compression engines for tests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37820
diff
changeset
|
7 zstd isn't present in plain builds. Make tests easier by removing |
da07c781aba9
tests: explicitly define compression engines for tests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37820
diff
changeset
|
8 zstd from the equation. |
da07c781aba9
tests: explicitly define compression engines for tests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37820
diff
changeset
|
9 |
da07c781aba9
tests: explicitly define compression engines for tests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37820
diff
changeset
|
10 $ cat >> server/.hg/hgrc << EOF |
da07c781aba9
tests: explicitly define compression engines for tests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37820
diff
changeset
|
11 > [server] |
da07c781aba9
tests: explicitly define compression engines for tests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37820
diff
changeset
|
12 > compressionengines = zlib |
da07c781aba9
tests: explicitly define compression engines for tests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37820
diff
changeset
|
13 > EOF |
da07c781aba9
tests: explicitly define compression engines for tests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37820
diff
changeset
|
14 |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
15 $ hg -R server serve -p $HGPORT -d --pid-file hg.pid -E error.log |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
16 $ cat hg.pid > $DAEMON_PIDS |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
17 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
18 A normal capabilities request is serviced for version 1 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
19 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
20 $ sendhttpraw << EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
21 > httprequest GET ?cmd=capabilities |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
22 > user-agent: test |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
23 > EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
24 using raw connection to peer |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
25 s> GET /?cmd=capabilities HTTP/1.1\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
26 s> Accept-Encoding: identity\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
27 s> user-agent: test\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
28 s> host: $LOCALIP:$HGPORT\r\n (glob) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
29 s> \r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
30 s> makefile('rb', None) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
31 s> HTTP/1.1 200 Script output follows\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
32 s> Server: testing stub value\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
33 s> Date: $HTTP_DATE$\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
34 s> Content-Type: application/mercurial-0.1\r\n |
37820
143632f82479
tests: glob away content-length changes relating to missing zstd bindings
Augie Fackler <augie@google.com>
parents:
37761
diff
changeset
|
35 s> Content-Length: *\r\n (glob) |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
36 s> \r\n |
39722
4bd6e444c76f
bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents:
39641
diff
changeset
|
37 s> batch 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 |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
38 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
39 A proper request without the API server enabled returns the legacy response |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
40 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
41 $ sendhttpraw << EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
42 > httprequest GET ?cmd=capabilities |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
43 > user-agent: test |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
44 > x-hgupgrade-1: foo |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
45 > x-hgproto-1: cbor |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
46 > EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
47 using raw connection to peer |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
48 s> GET /?cmd=capabilities HTTP/1.1\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
49 s> Accept-Encoding: identity\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
50 s> user-agent: test\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
51 s> x-hgproto-1: cbor\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
52 s> x-hgupgrade-1: foo\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
53 s> host: $LOCALIP:$HGPORT\r\n (glob) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
54 s> \r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
55 s> makefile('rb', None) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
56 s> HTTP/1.1 200 Script output follows\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
57 s> Server: testing stub value\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
58 s> Date: $HTTP_DATE$\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
59 s> Content-Type: application/mercurial-0.1\r\n |
37820
143632f82479
tests: glob away content-length changes relating to missing zstd bindings
Augie Fackler <augie@google.com>
parents:
37761
diff
changeset
|
60 s> Content-Length: *\r\n (glob) |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
61 s> \r\n |
39722
4bd6e444c76f
bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents:
39641
diff
changeset
|
62 s> batch 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 |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
63 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
64 Restart with just API server enabled. This enables serving the new format. |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
65 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
66 $ killdaemons.py |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
67 $ cat error.log |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
68 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
69 $ cat >> server/.hg/hgrc << EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
70 > [experimental] |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
71 > web.apiserver = true |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
72 > EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
73 |
37533
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
74 $ hg -R server serve -p $HGPORT -d --pid-file hg.pid -E error.log |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
75 $ cat hg.pid > $DAEMON_PIDS |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
76 |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
77 X-HgUpgrade-<N> without CBOR advertisement uses legacy response |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
78 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
79 $ sendhttpraw << EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
80 > httprequest GET ?cmd=capabilities |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
81 > user-agent: test |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
82 > x-hgupgrade-1: foo bar |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
83 > EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
84 using raw connection to peer |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
85 s> GET /?cmd=capabilities HTTP/1.1\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
86 s> Accept-Encoding: identity\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
87 s> user-agent: test\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
88 s> x-hgupgrade-1: foo bar\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
89 s> host: $LOCALIP:$HGPORT\r\n (glob) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
90 s> \r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
91 s> makefile('rb', None) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
92 s> HTTP/1.1 200 Script output follows\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
93 s> Server: testing stub value\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
94 s> Date: $HTTP_DATE$\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
95 s> Content-Type: application/mercurial-0.1\r\n |
37820
143632f82479
tests: glob away content-length changes relating to missing zstd bindings
Augie Fackler <augie@google.com>
parents:
37761
diff
changeset
|
96 s> Content-Length: *\r\n (glob) |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
97 s> \r\n |
39722
4bd6e444c76f
bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents:
39641
diff
changeset
|
98 s> batch 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 |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
99 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
100 X-HgUpgrade-<N> without known serialization in X-HgProto-<N> uses legacy response |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
101 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
102 $ sendhttpraw << EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
103 > httprequest GET ?cmd=capabilities |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
104 > user-agent: test |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
105 > x-hgupgrade-1: foo bar |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
106 > x-hgproto-1: some value |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
107 > EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
108 using raw connection to peer |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
109 s> GET /?cmd=capabilities HTTP/1.1\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
110 s> Accept-Encoding: identity\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
111 s> user-agent: test\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
112 s> x-hgproto-1: some value\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
113 s> x-hgupgrade-1: foo bar\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
114 s> host: $LOCALIP:$HGPORT\r\n (glob) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
115 s> \r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
116 s> makefile('rb', None) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
117 s> HTTP/1.1 200 Script output follows\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
118 s> Server: testing stub value\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
119 s> Date: $HTTP_DATE$\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
120 s> Content-Type: application/mercurial-0.1\r\n |
37820
143632f82479
tests: glob away content-length changes relating to missing zstd bindings
Augie Fackler <augie@google.com>
parents:
37761
diff
changeset
|
121 s> Content-Length: *\r\n (glob) |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
122 s> \r\n |
39722
4bd6e444c76f
bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents:
39641
diff
changeset
|
123 s> batch 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 |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
124 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
125 X-HgUpgrade-<N> + X-HgProto-<N> headers trigger new response format |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
126 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
127 $ sendhttpraw << EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
128 > httprequest GET ?cmd=capabilities |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
129 > user-agent: test |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
130 > x-hgupgrade-1: foo bar |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
131 > x-hgproto-1: cbor |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
132 > EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
133 using raw connection to peer |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
134 s> GET /?cmd=capabilities HTTP/1.1\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
135 s> Accept-Encoding: identity\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
136 s> user-agent: test\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
137 s> x-hgproto-1: cbor\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
138 s> x-hgupgrade-1: foo bar\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
139 s> host: $LOCALIP:$HGPORT\r\n (glob) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
140 s> \r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
141 s> makefile('rb', None) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
142 s> HTTP/1.1 200 OK\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
143 s> Server: testing stub value\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
144 s> Date: $HTTP_DATE$\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
145 s> Content-Type: application/mercurial-cbor\r\n |
37820
143632f82479
tests: glob away content-length changes relating to missing zstd bindings
Augie Fackler <augie@google.com>
parents:
37761
diff
changeset
|
146 s> Content-Length: *\r\n (glob) |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
147 s> \r\n |
39722
4bd6e444c76f
bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents:
39641
diff
changeset
|
148 s> \xa3GapibaseDapi/Dapis\xa0Nv1capabilitiesY\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 |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
149 cbor> [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
150 { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
151 b'apibase': b'api/', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
152 b'apis': {}, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
153 b'v1capabilities': b'batch 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' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
154 } |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
155 ] |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
156 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
157 Restart server to enable HTTPv2 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
158 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
159 $ killdaemons.py |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
160 $ enablehttpv2 server |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
161 $ hg -R server serve -p $HGPORT -d --pid-file hg.pid -E error.log |
37761
ff6b0a20849d
tests: arrange for a server in wireproto-command-capabilities.t to be killed
Matt Harbison <matt_harbison@yahoo.com>
parents:
37725
diff
changeset
|
162 $ cat hg.pid > $DAEMON_PIDS |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
163 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
164 Only requested API services are returned |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
165 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
166 $ sendhttpraw << EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
167 > httprequest GET ?cmd=capabilities |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
168 > user-agent: test |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
169 > x-hgupgrade-1: foo bar |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
170 > x-hgproto-1: cbor |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
171 > EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
172 using raw connection to peer |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
173 s> GET /?cmd=capabilities HTTP/1.1\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
174 s> Accept-Encoding: identity\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
175 s> user-agent: test\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
176 s> x-hgproto-1: cbor\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
177 s> x-hgupgrade-1: foo bar\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
178 s> host: $LOCALIP:$HGPORT\r\n (glob) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
179 s> \r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
180 s> makefile('rb', None) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
181 s> HTTP/1.1 200 OK\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
182 s> Server: testing stub value\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
183 s> Date: $HTTP_DATE$\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
184 s> Content-Type: application/mercurial-cbor\r\n |
37820
143632f82479
tests: glob away content-length changes relating to missing zstd bindings
Augie Fackler <augie@google.com>
parents:
37761
diff
changeset
|
185 s> Content-Length: *\r\n (glob) |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
186 s> \r\n |
39722
4bd6e444c76f
bundle2: make server.bundle2.stream default to True
Anton Shestakov <av6@dwimlabs.net>
parents:
39641
diff
changeset
|
187 s> \xa3GapibaseDapi/Dapis\xa0Nv1capabilitiesY\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 |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
188 cbor> [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
189 { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
190 b'apibase': b'api/', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
191 b'apis': {}, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
192 b'v1capabilities': b'batch 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' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
193 } |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
194 ] |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
195 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
196 Request for HTTPv2 service returns information about it |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
197 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
198 $ sendhttpraw << EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
199 > httprequest GET ?cmd=capabilities |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
200 > user-agent: test |
39814
d059cb669632
wireprotov2: allow multiple fields to follow revision maps
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39813
diff
changeset
|
201 > x-hgupgrade-1: exp-http-v2-0002 foo bar |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
202 > x-hgproto-1: cbor |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
203 > EOF |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
204 using raw connection to peer |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
205 s> GET /?cmd=capabilities HTTP/1.1\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
206 s> Accept-Encoding: identity\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
207 s> user-agent: test\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
208 s> x-hgproto-1: cbor\r\n |
39814
d059cb669632
wireprotov2: allow multiple fields to follow revision maps
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39813
diff
changeset
|
209 s> x-hgupgrade-1: exp-http-v2-0002 foo bar\r\n |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
210 s> host: $LOCALIP:$HGPORT\r\n (glob) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
211 s> \r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
212 s> makefile('rb', None) |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
213 s> HTTP/1.1 200 OK\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
214 s> Server: testing stub value\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
215 s> Date: $HTTP_DATE$\r\n |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
216 s> Content-Type: application/mercurial-cbor\r\n |
37645
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
217 s> Content-Length: *\r\n (glob) |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
218 s> \r\n |
40172
30f70d11c224
wireprotov2: advertise recommended batch size for requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40138
diff
changeset
|
219 s> \xa3GapibaseDapi/Dapis\xa1Pexp-http-v2-0002\xa4Hcommands\xaaIbranchmap\xa2Dargs\xa0Kpermissions\x81DpullLcapabilities\xa2Dargs\xa0Kpermissions\x81DpullMchangesetdata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x84IbookmarksGparentsEphaseHrevisionInoderange\xa3Gdefault\xf6Hrequired\xf4DtypeDlistEnodes\xa3Gdefault\xf6Hrequired\xf4DtypeDlistJnodesdepth\xa3Gdefault\xf6Hrequired\xf4DtypeCintKpermissions\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\xa3Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDtree\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullTrecommendedbatchsize\x1a\x00\x01\x86\xa0Gpushkey\xa2Dargs\xa4Ckey\xa2Hrequired\xf5DtypeEbytesInamespace\xa2Hrequired\xf5DtypeEbytesCnew\xa2Hrequired\xf5DtypeEbytesCold\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpushQframingmediatypes\x81X&application/mercurial-exp-framing-0006Rpathfilterprefixes\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 |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
220 cbor> [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
221 { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
222 b'apibase': b'api/', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
223 b'apis': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
224 b'exp-http-v2-0002': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
225 b'commands': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
226 b'branchmap': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
227 b'args': {}, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
228 b'permissions': [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
229 b'pull' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
230 ] |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
231 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
232 b'capabilities': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
233 b'args': {}, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
234 b'permissions': [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
235 b'pull' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
236 ] |
39630
9c2c77c73f23
wireprotov2: define and implement "changesetdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39561
diff
changeset
|
237 }, |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
238 b'changesetdata': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
239 b'args': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
240 b'fields': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
241 b'default': set([]), |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
242 b'required': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
243 b'type': b'set', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
244 b'validvalues': set([ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
245 b'bookmarks', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
246 b'parents', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
247 b'phase', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
248 b'revision' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
249 ]) |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
250 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
251 b'noderange': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
252 b'default': None, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
253 b'required': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
254 b'type': b'list' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
255 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
256 b'nodes': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
257 b'default': None, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
258 b'required': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
259 b'type': b'list' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
260 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
261 b'nodesdepth': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
262 b'default': None, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
263 b'required': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
264 b'type': b'int' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
265 } |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
266 }, |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
267 b'permissions': [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
268 b'pull' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
269 ] |
39639
0e03e6a44dee
wireprotov2: define and implement "filedata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39637
diff
changeset
|
270 }, |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
271 b'filedata': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
272 b'args': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
273 b'fields': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
274 b'default': set([]), |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
275 b'required': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
276 b'type': b'set', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
277 b'validvalues': set([ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
278 b'parents', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
279 b'revision' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
280 ]) |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
281 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
282 b'haveparents': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
283 b'default': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
284 b'required': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
285 b'type': b'bool' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
286 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
287 b'nodes': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
288 b'required': True, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
289 b'type': b'list' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
290 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
291 b'path': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
292 b'required': True, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
293 b'type': b'bytes' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
294 } |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
295 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
296 b'permissions': [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
297 b'pull' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
298 ] |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
299 }, |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
300 b'heads': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
301 b'args': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
302 b'publiconly': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
303 b'default': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
304 b'required': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
305 b'type': b'bool' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
306 } |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
307 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
308 b'permissions': [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
309 b'pull' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
310 ] |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
311 }, |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
312 b'known': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
313 b'args': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
314 b'nodes': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
315 b'default': [], |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
316 b'required': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
317 b'type': b'list' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
318 } |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
319 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
320 b'permissions': [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
321 b'pull' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
322 ] |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
323 }, |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
324 b'listkeys': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
325 b'args': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
326 b'namespace': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
327 b'required': True, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
328 b'type': b'bytes' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
329 } |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
330 }, |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
331 b'permissions': [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
332 b'pull' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
333 ] |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
334 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
335 b'lookup': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
336 b'args': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
337 b'key': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
338 b'required': True, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
339 b'type': b'bytes' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
340 } |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
341 }, |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
342 b'permissions': [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
343 b'pull' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
344 ] |
39637
c7a7c7e844e5
wireprotov2: define and implement "manifestdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39630
diff
changeset
|
345 }, |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
346 b'manifestdata': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
347 b'args': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
348 b'fields': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
349 b'default': set([]), |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
350 b'required': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
351 b'type': b'set', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
352 b'validvalues': set([ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
353 b'parents', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
354 b'revision' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
355 ]) |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
356 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
357 b'haveparents': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
358 b'default': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
359 b'required': False, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
360 b'type': b'bool' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
361 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
362 b'nodes': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
363 b'required': True, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
364 b'type': b'list' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
365 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
366 b'tree': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
367 b'required': True, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
368 b'type': b'bytes' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
369 } |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
370 }, |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
371 b'permissions': [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
372 b'pull' |
40172
30f70d11c224
wireprotov2: advertise recommended batch size for requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40138
diff
changeset
|
373 ], |
30f70d11c224
wireprotov2: advertise recommended batch size for requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40138
diff
changeset
|
374 b'recommendedbatchsize': 100000 |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
375 }, |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
376 b'pushkey': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
377 b'args': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
378 b'key': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
379 b'required': True, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
380 b'type': b'bytes' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
381 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
382 b'namespace': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
383 b'required': True, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
384 b'type': b'bytes' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
385 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
386 b'new': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
387 b'required': True, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
388 b'type': b'bytes' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
389 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
390 b'old': { |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
391 b'required': True, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
392 b'type': b'bytes' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
393 } |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
394 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
395 b'permissions': [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
396 b'push' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
397 ] |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
398 } |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
399 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
400 b'framingmediatypes': [ |
40133
762ef19a07e3
wireprotov2: send protocol settings frame from client
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40122
diff
changeset
|
401 b'application/mercurial-exp-framing-0006' |
40017
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
402 ], |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
403 b'pathfilterprefixes': set([ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
404 b'path:', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
405 b'rootfilesin:' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
406 ]), |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
407 b'rawrepoformats': [ |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
408 b'generaldelta', |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
409 b'revlogv1' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
410 ] |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
411 } |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
412 }, |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
413 b'v1capabilities': b'batch 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' |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
414 } |
426cb2859013
debugcommands: print all CBOR objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39815
diff
changeset
|
415 ] |
37557
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
416 |
734515aca84d
wireproto: define and implement HTTP handshake to upgrade protocol
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37539
diff
changeset
|
417 capabilities command returns expected info |
37533
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
418 |
37718
ad1c07008e0b
debugcommands: ability to suppress logging of handshake
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37657
diff
changeset
|
419 $ sendhttpv2peerhandshake << EOF |
37533
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
420 > command capabilities |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
421 > EOF |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
422 creating http peer for wire protocol version 2 |
37718
ad1c07008e0b
debugcommands: ability to suppress logging of handshake
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37657
diff
changeset
|
423 s> GET /?cmd=capabilities HTTP/1.1\r\n |
37645
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
424 s> Accept-Encoding: identity\r\n |
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
425 s> vary: X-HgProto-1,X-HgUpgrade-1\r\n |
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
426 s> x-hgproto-1: cbor\r\n |
39814
d059cb669632
wireprotov2: allow multiple fields to follow revision maps
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39813
diff
changeset
|
427 s> x-hgupgrade-1: exp-http-v2-0002\r\n |
37645
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
428 s> accept: application/mercurial-0.1\r\n |
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
429 s> host: $LOCALIP:$HGPORT\r\n (glob) |
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
430 s> user-agent: Mercurial debugwireproto\r\n |
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
431 s> \r\n |
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
432 s> makefile('rb', None) |
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
433 s> HTTP/1.1 200 OK\r\n |
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
434 s> Server: testing stub value\r\n |
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
435 s> Date: $HTTP_DATE$\r\n |
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
436 s> Content-Type: application/mercurial-cbor\r\n |
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
437 s> Content-Length: *\r\n (glob) |
72b0982cd509
debugcommands: perform handshake when obtaining httpv2 peer
Gregory Szorc <gregory.szorc@gmail.com>
parents:
37557
diff
changeset
|
438 s> \r\n |
40172
30f70d11c224
wireprotov2: advertise recommended batch size for requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40138
diff
changeset
|
439 s> \xa3GapibaseDapi/Dapis\xa1Pexp-http-v2-0002\xa4Hcommands\xaaIbranchmap\xa2Dargs\xa0Kpermissions\x81DpullLcapabilities\xa2Dargs\xa0Kpermissions\x81DpullMchangesetdata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x84IbookmarksGparentsEphaseHrevisionInoderange\xa3Gdefault\xf6Hrequired\xf4DtypeDlistEnodes\xa3Gdefault\xf6Hrequired\xf4DtypeDlistJnodesdepth\xa3Gdefault\xf6Hrequired\xf4DtypeCintKpermissions\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\xa3Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDtree\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullTrecommendedbatchsize\x1a\x00\x01\x86\xa0Gpushkey\xa2Dargs\xa4Ckey\xa2Hrequired\xf5DtypeEbytesInamespace\xa2Hrequired\xf5DtypeEbytesCnew\xa2Hrequired\xf5DtypeEbytesCold\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpushQframingmediatypes\x81X&application/mercurial-exp-framing-0006Rpathfilterprefixes\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 |
37533
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
440 sending capabilities command |
39814
d059cb669632
wireprotov2: allow multiple fields to follow revision maps
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39813
diff
changeset
|
441 s> POST /api/exp-http-v2-0002/ro/capabilities HTTP/1.1\r\n |
37533
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
442 s> Accept-Encoding: identity\r\n |
40133
762ef19a07e3
wireprotov2: send protocol settings frame from client
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40122
diff
changeset
|
443 s> accept: application/mercurial-exp-framing-0006\r\n |
762ef19a07e3
wireprotov2: send protocol settings frame from client
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40122
diff
changeset
|
444 s> content-type: application/mercurial-exp-framing-0006\r\n |
762ef19a07e3
wireprotov2: send protocol settings frame from client
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40122
diff
changeset
|
445 s> content-length: 63\r\n |
37533
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
446 s> host: $LOCALIP:$HGPORT\r\n (glob) |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
447 s> user-agent: Mercurial debugwireproto\r\n |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
448 s> \r\n |
40133
762ef19a07e3
wireprotov2: send protocol settings frame from client
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40122
diff
changeset
|
449 s> \x1c\x00\x00\x01\x00\x01\x01\x82\xa1Pcontentencodings\x81Hidentity\x13\x00\x00\x01\x00\x01\x00\x11\xa1DnameLcapabilities |
37533
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
450 s> makefile('rb', None) |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
451 s> HTTP/1.1 200 OK\r\n |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
452 s> Server: testing stub value\r\n |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
453 s> Date: $HTTP_DATE$\r\n |
40133
762ef19a07e3
wireprotov2: send protocol settings frame from client
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40122
diff
changeset
|
454 s> Content-Type: application/mercurial-exp-framing-0006\r\n |
37533
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
455 s> Transfer-Encoding: chunked\r\n |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
456 s> \r\n |
40138
b5bf3dd6ec5b
wireprotov2: send content encoded frames from server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40133
diff
changeset
|
457 s> 11\r\n |
b5bf3dd6ec5b
wireprotov2: send content encoded frames from server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40133
diff
changeset
|
458 s> \t\x00\x00\x01\x00\x02\x01\x92 |
b5bf3dd6ec5b
wireprotov2: send content encoded frames from server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40133
diff
changeset
|
459 s> Hidentity |
b5bf3dd6ec5b
wireprotov2: send content encoded frames from server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40133
diff
changeset
|
460 s> \r\n |
b5bf3dd6ec5b
wireprotov2: send content encoded frames from server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40133
diff
changeset
|
461 received frame(size=9; request=1; stream=2; streamflags=stream-begin; type=stream-settings; flags=eos) |
39559
07b58266bce3
wireprotov2: implement commands as a generator of objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39448
diff
changeset
|
462 s> 13\r\n |
40138
b5bf3dd6ec5b
wireprotov2: send content encoded frames from server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40133
diff
changeset
|
463 s> \x0b\x00\x00\x01\x00\x02\x041 |
39559
07b58266bce3
wireprotov2: implement commands as a generator of objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39448
diff
changeset
|
464 s> \xa1FstatusBok |
37533
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
465 s> \r\n |
40138
b5bf3dd6ec5b
wireprotov2: send content encoded frames from server
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40133
diff
changeset
|
466 received frame(size=11; request=1; stream=2; streamflags=encoded; type=command-response; flags=continuation) |
40172
30f70d11c224
wireprotov2: advertise recommended batch size for requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40138
diff
changeset
|
467 s> 522\r\n |
30f70d11c224
wireprotov2: advertise recommended batch size for requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40138
diff
changeset
|
468 s> \x1a\x05\x00\x01\x00\x02\x041 |
30f70d11c224
wireprotov2: advertise recommended batch size for requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40138
diff
changeset
|
469 s> \xa4Hcommands\xaaIbranchmap\xa2Dargs\xa0Kpermissions\x81DpullLcapabilities\xa2Dargs\xa0Kpermissions\x81DpullMchangesetdata\xa2Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x84IbookmarksGparentsEphaseHrevisionInoderange\xa3Gdefault\xf6Hrequired\xf4DtypeDlistEnodes\xa3Gdefault\xf6Hrequired\xf4DtypeDlistJnodesdepth\xa3Gdefault\xf6Hrequired\xf4DtypeCintKpermissions\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\xa3Dargs\xa4Ffields\xa4Gdefault\xd9\x01\x02\x80Hrequired\xf4DtypeCsetKvalidvalues\xd9\x01\x02\x82GparentsHrevisionKhaveparents\xa3Gdefault\xf4Hrequired\xf4DtypeDboolEnodes\xa2Hrequired\xf5DtypeDlistDtree\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpullTrecommendedbatchsize\x1a\x00\x01\x86\xa0Gpushkey\xa2Dargs\xa4Ckey\xa2Hrequired\xf5DtypeEbytesInamespace\xa2Hrequired\xf5DtypeEbytesCnew\xa2Hrequired\xf5DtypeEbytesCold\xa2Hrequired\xf5DtypeEbytesKpermissions\x81DpushQframingmediatypes\x81X&application/mercurial-exp-framing-0006Rpathfilterprefixes\xd9\x01\x02\x82Epath:Lrootfilesin:Nrawrepoformats\x82LgeneraldeltaHrevlogv1 |
39559
07b58266bce3
wireprotov2: implement commands as a generator of objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39448
diff
changeset
|
470 s> \r\n |
40172
30f70d11c224
wireprotov2: advertise recommended batch size for requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40138
diff
changeset
|
471 received frame(size=1306; request=1; stream=2; streamflags=encoded; type=command-response; flags=continuation) |
39559
07b58266bce3
wireprotov2: implement commands as a generator of objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39448
diff
changeset
|
472 s> 8\r\n |
07b58266bce3
wireprotov2: implement commands as a generator of objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39448
diff
changeset
|
473 s> \x00\x00\x00\x01\x00\x02\x002 |
07b58266bce3
wireprotov2: implement commands as a generator of objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39448
diff
changeset
|
474 s> \r\n |
37533
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
475 s> 0\r\n |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
476 s> \r\n |
39559
07b58266bce3
wireprotov2: implement commands as a generator of objects
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39448
diff
changeset
|
477 received frame(size=0; request=1; stream=2; streamflags=; type=command-response; flags=eos) |
39561
d06834e0f48e
wireprotov2peer: stream decoded responses
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39559
diff
changeset
|
478 response: gen[ |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
479 { |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
480 b'commands': { |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
481 b'branchmap': { |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
482 b'args': {}, |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
483 b'permissions': [ |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
484 b'pull' |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
485 ] |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
486 }, |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
487 b'capabilities': { |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
488 b'args': {}, |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
489 b'permissions': [ |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
490 b'pull' |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
491 ] |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
492 }, |
39630
9c2c77c73f23
wireprotov2: define and implement "changesetdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39561
diff
changeset
|
493 b'changesetdata': { |
9c2c77c73f23
wireprotov2: define and implement "changesetdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39561
diff
changeset
|
494 b'args': { |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
495 b'fields': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
496 b'default': set([]), |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
497 b'required': False, |
39813
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
498 b'type': b'set', |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
499 b'validvalues': set([ |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
500 b'bookmarks', |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
501 b'parents', |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
502 b'phase', |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
503 b'revision' |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
504 ]) |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
505 }, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
506 b'noderange': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
507 b'default': None, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
508 b'required': False, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
509 b'type': b'list' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
510 }, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
511 b'nodes': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
512 b'default': None, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
513 b'required': False, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
514 b'type': b'list' |
39815
d3d333ab167a
wireprotov2: teach changesetdata to fetch ancestors until depth
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39814
diff
changeset
|
515 }, |
d3d333ab167a
wireprotov2: teach changesetdata to fetch ancestors until depth
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39814
diff
changeset
|
516 b'nodesdepth': { |
d3d333ab167a
wireprotov2: teach changesetdata to fetch ancestors until depth
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39814
diff
changeset
|
517 b'default': None, |
d3d333ab167a
wireprotov2: teach changesetdata to fetch ancestors until depth
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39814
diff
changeset
|
518 b'required': False, |
d3d333ab167a
wireprotov2: teach changesetdata to fetch ancestors until depth
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39814
diff
changeset
|
519 b'type': b'int' |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
520 } |
39630
9c2c77c73f23
wireprotov2: define and implement "changesetdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39561
diff
changeset
|
521 }, |
9c2c77c73f23
wireprotov2: define and implement "changesetdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39561
diff
changeset
|
522 b'permissions': [ |
9c2c77c73f23
wireprotov2: define and implement "changesetdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39561
diff
changeset
|
523 b'pull' |
9c2c77c73f23
wireprotov2: define and implement "changesetdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39561
diff
changeset
|
524 ] |
9c2c77c73f23
wireprotov2: define and implement "changesetdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39561
diff
changeset
|
525 }, |
39639
0e03e6a44dee
wireprotov2: define and implement "filedata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39637
diff
changeset
|
526 b'filedata': { |
0e03e6a44dee
wireprotov2: define and implement "filedata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39637
diff
changeset
|
527 b'args': { |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
528 b'fields': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
529 b'default': set([]), |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
530 b'required': False, |
39813
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
531 b'type': b'set', |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
532 b'validvalues': set([ |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
533 b'parents', |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
534 b'revision' |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
535 ]) |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
536 }, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
537 b'haveparents': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
538 b'default': False, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
539 b'required': False, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
540 b'type': b'bool' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
541 }, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
542 b'nodes': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
543 b'required': True, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
544 b'type': b'list' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
545 }, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
546 b'path': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
547 b'required': True, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
548 b'type': b'bytes' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
549 } |
39639
0e03e6a44dee
wireprotov2: define and implement "filedata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39637
diff
changeset
|
550 }, |
0e03e6a44dee
wireprotov2: define and implement "filedata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39637
diff
changeset
|
551 b'permissions': [ |
0e03e6a44dee
wireprotov2: define and implement "filedata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39637
diff
changeset
|
552 b'pull' |
0e03e6a44dee
wireprotov2: define and implement "filedata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39637
diff
changeset
|
553 ] |
0e03e6a44dee
wireprotov2: define and implement "filedata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39637
diff
changeset
|
554 }, |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
555 b'heads': { |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
556 b'args': { |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
557 b'publiconly': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
558 b'default': False, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
559 b'required': False, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
560 b'type': b'bool' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
561 } |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
562 }, |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
563 b'permissions': [ |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
564 b'pull' |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
565 ] |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
566 }, |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
567 b'known': { |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
568 b'args': { |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
569 b'nodes': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
570 b'default': [], |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
571 b'required': False, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
572 b'type': b'list' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
573 } |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
574 }, |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
575 b'permissions': [ |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
576 b'pull' |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
577 ] |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
578 }, |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
579 b'listkeys': { |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
580 b'args': { |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
581 b'namespace': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
582 b'required': True, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
583 b'type': b'bytes' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
584 } |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
585 }, |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
586 b'permissions': [ |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
587 b'pull' |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
588 ] |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
589 }, |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
590 b'lookup': { |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
591 b'args': { |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
592 b'key': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
593 b'required': True, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
594 b'type': b'bytes' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
595 } |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
596 }, |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
597 b'permissions': [ |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
598 b'pull' |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
599 ] |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
600 }, |
39637
c7a7c7e844e5
wireprotov2: define and implement "manifestdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39630
diff
changeset
|
601 b'manifestdata': { |
c7a7c7e844e5
wireprotov2: define and implement "manifestdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39630
diff
changeset
|
602 b'args': { |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
603 b'fields': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
604 b'default': set([]), |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
605 b'required': False, |
39813
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
606 b'type': b'set', |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
607 b'validvalues': set([ |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
608 b'parents', |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
609 b'revision' |
c30faea8d02d
wireprotov2: advertise set of valid values for requestable fields
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39812
diff
changeset
|
610 ]) |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
611 }, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
612 b'haveparents': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
613 b'default': False, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
614 b'required': False, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
615 b'type': b'bool' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
616 }, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
617 b'nodes': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
618 b'required': True, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
619 b'type': b'list' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
620 }, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
621 b'tree': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
622 b'required': True, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
623 b'type': b'bytes' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
624 } |
39637
c7a7c7e844e5
wireprotov2: define and implement "manifestdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39630
diff
changeset
|
625 }, |
c7a7c7e844e5
wireprotov2: define and implement "manifestdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39630
diff
changeset
|
626 b'permissions': [ |
c7a7c7e844e5
wireprotov2: define and implement "manifestdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39630
diff
changeset
|
627 b'pull' |
40172
30f70d11c224
wireprotov2: advertise recommended batch size for requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40138
diff
changeset
|
628 ], |
30f70d11c224
wireprotov2: advertise recommended batch size for requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40138
diff
changeset
|
629 b'recommendedbatchsize': 100000 |
39637
c7a7c7e844e5
wireprotov2: define and implement "manifestdata" command
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39630
diff
changeset
|
630 }, |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
631 b'pushkey': { |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
632 b'args': { |
39812
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
633 b'key': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
634 b'required': True, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
635 b'type': b'bytes' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
636 }, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
637 b'namespace': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
638 b'required': True, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
639 b'type': b'bytes' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
640 }, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
641 b'new': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
642 b'required': True, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
643 b'type': b'bytes' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
644 }, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
645 b'old': { |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
646 b'required': True, |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
647 b'type': b'bytes' |
8e7e822e85ec
wireprotov2: expose rich arguments metadata
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39811
diff
changeset
|
648 } |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
649 }, |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
650 b'permissions': [ |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
651 b'push' |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
652 ] |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
653 } |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
654 }, |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
655 b'framingmediatypes': [ |
40133
762ef19a07e3
wireprotov2: send protocol settings frame from client
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40122
diff
changeset
|
656 b'application/mercurial-exp-framing-0006' |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
657 ], |
39811
ae20f52437e9
wireprotov2: advertise recognized path filter prefixes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39810
diff
changeset
|
658 b'pathfilterprefixes': set([ |
ae20f52437e9
wireprotov2: advertise recognized path filter prefixes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39810
diff
changeset
|
659 b'path:', |
ae20f52437e9
wireprotov2: advertise recognized path filter prefixes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39810
diff
changeset
|
660 b'rootfilesin:' |
ae20f52437e9
wireprotov2: advertise recognized path filter prefixes
Gregory Szorc <gregory.szorc@gmail.com>
parents:
39810
diff
changeset
|
661 ]), |
39378
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
662 b'rawrepoformats': [ |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
663 b'generaldelta', |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
664 b'revlogv1' |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
665 ] |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
666 } |
0f549da54379
stringutil: teach pprint() to indent
Gregory Szorc <gregory.szorc@gmail.com>
parents:
38021
diff
changeset
|
667 ] |
40034
393e44324037
httppeer: report http statistics
Gregory Szorc <gregory.szorc@gmail.com>
parents:
40017
diff
changeset
|
668 (sent 2 HTTP requests and * bytes; received * bytes in responses) (glob) |
37533
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
669 |
df4985497986
wireproto: implement capabilities for wire protocol v2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
670 $ cat error.log |