Mercurial > hg
annotate tests/test-clonebundles.t @ 37048:fc5e261915b9
wireproto: require POST for all HTTPv2 requests
Wire protocol version 1 transfers argument data via request
headers by default. This has historically caused problems because
servers institute limits on the length of individual HTTP headers
as well as the total size of all request headers. Mercurial servers
can advertise the maximum length of an individual header. But
there's no guarantee any intermediate HTTP agents will accept
headers up to that length.
In the existing wire protocol, server operators typically also
key off the HTTP request method to implement authentication.
For example, GET requests translate to read-only requests and
can be allowed. But read-write commands must use POST and require
authentication. This has typically worked because the only wire
protocol commands that use POST modify the repo (e.g. the
"unbundle" command).
There is an experimental feature to enable clients to transmit
argument data via POST request bodies. This is technically a
better and more robust solution. But we can't enable it by default
because of servers assuming POST means write access.
In version 2 of the wire protocol, the permissions of a request
are encoded in the URL. And with it being a new protocol in a new
URL space, we're not constrained by backwards compatibility
requirements.
This commit adopts the technically superior mechanism of using
HTTP request bodies to send argument data by requiring POST for
all commands. Strictly speaking, it may be possible to send
request bodies on GET requests. But my experience is that not all
HTTP stacks support this. POST pretty much always works. Using POST
for read-only operations does sacrifice some RESTful design
purity. But this API cares about practicality, not about being
in Roy T. Fielding's REST ivory tower.
There's a chance we may relax this restriction in the future. But
for now, I want to see how far we can get with a POST only API.
Differential Revision: https://phab.mercurial-scm.org/D2837
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Tue, 13 Mar 2018 11:57:43 -0700 |
parents | b89a7ef29013 |
children | db06c4bb2158 |
rev | line source |
---|---|
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
1 Set up a server |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
2 |
26932
eb49ffa39fe2
test: use generaldelta in 'test-clonebundle.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26857
diff
changeset
|
3 $ cat >> $HGRCPATH << EOF |
eb49ffa39fe2
test: use generaldelta in 'test-clonebundle.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26857
diff
changeset
|
4 > [format] |
eb49ffa39fe2
test: use generaldelta in 'test-clonebundle.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26857
diff
changeset
|
5 > usegeneraldelta=yes |
eb49ffa39fe2
test: use generaldelta in 'test-clonebundle.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26857
diff
changeset
|
6 > EOF |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
7 $ hg init server |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
8 $ cd server |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
9 $ cat >> .hg/hgrc << EOF |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
10 > [extensions] |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
11 > clonebundles = |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
12 > EOF |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
13 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
14 $ touch foo |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
15 $ hg -q commit -A -m 'add foo' |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
16 $ touch bar |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
17 $ hg -q commit -A -m 'add bar' |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
18 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
19 $ hg serve -d -p $HGPORT --pid-file hg.pid --accesslog access.log |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
20 $ cat hg.pid >> $DAEMON_PIDS |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
21 $ cd .. |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
22 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
23 Missing manifest should not result in server lookup |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
24 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
25 $ hg --verbose clone -U http://localhost:$HGPORT no-manifest |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
26 requesting all changes |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
27 adding changesets |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
28 adding manifests |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
29 adding file changes |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
30 added 2 changesets with 2 changes to 2 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34393
diff
changeset
|
31 new changesets 53245c60e682:aaff8d2ffbbf |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
32 |
27738
a0e783d26e81
exchange: make clone bundles non-experimental and enabled by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27737
diff
changeset
|
33 $ cat server/access.log |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
34 * - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob) |
35152
c1b94f34a11a
tests: re-add (glob) for $LOCALIP matches
Augie Fackler <augie@google.com>
parents:
35074
diff
changeset
|
35 $LOCALIP - - [$LOGDATE$] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ (glob) |
35268
44b8b5ad30eb
pull: retrieve bookmarks through the binary part when possible
Boris Feld <boris.feld@octobus.net>
parents:
35152
diff
changeset
|
36 $LOCALIP - - [$LOGDATE$] "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&$USUAL_BUNDLE_CAPS$&cg=1&common=0000000000000000000000000000000000000000&heads=aaff8d2ffbbf07a46dd1f05d8ae7877e3f56e2a2&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=$USUAL_COMPRESSIONS$ (glob) |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
37 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
38 Empty manifest file results in retrieval |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
39 (the extension only checks if the manifest file exists) |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
40 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
41 $ touch server/.hg/clonebundles.manifest |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
42 $ hg --verbose clone -U http://localhost:$HGPORT empty-manifest |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
43 no clone bundles available on remote; falling back to regular clone |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
44 requesting all changes |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
45 adding changesets |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
46 adding manifests |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
47 adding file changes |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
48 added 2 changesets with 2 changes to 2 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34393
diff
changeset
|
49 new changesets 53245c60e682:aaff8d2ffbbf |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
50 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
51 Manifest file with invalid URL aborts |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
52 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
53 $ echo 'http://does.not.exist/bundle.hg' > server/.hg/clonebundles.manifest |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
54 $ hg clone http://localhost:$HGPORT 404-url |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
55 applying clone bundle from http://does.not.exist/bundle.hg |
35853
2f7ab4fb7711
tests: allow [Errno] in output
Gregory Szorc <gregory.szorc@gmail.com>
parents:
35565
diff
changeset
|
56 error fetching bundle: (.* not known|(\[Errno -?\d+])? No address associated with hostname) (re) (no-windows !) |
32679
3d488079750b
test-clonebundles: conditionalize output for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
32079
diff
changeset
|
57 error fetching bundle: [Errno 11004] getaddrinfo failed (windows !) |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
58 abort: error applying bundle |
27738
a0e783d26e81
exchange: make clone bundles non-experimental and enabled by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27737
diff
changeset
|
59 (if this error persists, consider contacting the server operator or disable clone bundles via "--config ui.clonebundles=false") |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
60 [255] |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
61 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
62 Server is not running aborts |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
63 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
64 $ echo "http://localhost:$HGPORT1/bundle.hg" > server/.hg/clonebundles.manifest |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
65 $ hg clone http://localhost:$HGPORT server-not-runner |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
66 applying clone bundle from http://localhost:$HGPORT1/bundle.hg |
32993
d8b40230c8e8
tests: update regex check for fetch error in test-clonebundles.t
Denis Laxalde <denis@laxalde.org>
parents:
32940
diff
changeset
|
67 error fetching bundle: (.* refused.*|Protocol not supported|(.* )?Cannot assign requested address) (re) |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
68 abort: error applying bundle |
27738
a0e783d26e81
exchange: make clone bundles non-experimental and enabled by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27737
diff
changeset
|
69 (if this error persists, consider contacting the server operator or disable clone bundles via "--config ui.clonebundles=false") |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
70 [255] |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
71 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
72 Server returns 404 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
73 |
33335
72f051f9a7d8
tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
33286
diff
changeset
|
74 $ "$PYTHON" $TESTDIR/dumbhttp.py -p $HGPORT1 --pid http.pid |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
75 $ cat http.pid >> $DAEMON_PIDS |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
76 $ hg clone http://localhost:$HGPORT running-404 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
77 applying clone bundle from http://localhost:$HGPORT1/bundle.hg |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
78 HTTP error fetching bundle: HTTP Error 404: File not found |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
79 abort: error applying bundle |
27738
a0e783d26e81
exchange: make clone bundles non-experimental and enabled by default
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27737
diff
changeset
|
80 (if this error persists, consider contacting the server operator or disable clone bundles via "--config ui.clonebundles=false") |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
81 [255] |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
82 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
83 We can override failure to fall back to regular clone |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
84 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
85 $ hg --config ui.clonebundlefallback=true clone -U http://localhost:$HGPORT 404-fallback |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
86 applying clone bundle from http://localhost:$HGPORT1/bundle.hg |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
87 HTTP error fetching bundle: HTTP Error 404: File not found |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
88 falling back to normal clone |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
89 requesting all changes |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
90 adding changesets |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
91 adding manifests |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
92 adding file changes |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
93 added 2 changesets with 2 changes to 2 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34393
diff
changeset
|
94 new changesets 53245c60e682:aaff8d2ffbbf |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
95 |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
96 Bundle with partial content works |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
97 |
26644
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
98 $ hg -R server bundle --type gzip-v1 --base null -r 53245c60e682 partial.hg |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
99 1 changesets found |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
100 |
26644
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
101 We verify exact bundle content as an extra check against accidental future |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
102 changes. If this output changes, we could break old clients. |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
103 |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
104 $ f --size --hexdump partial.hg |
27711
7a678a12a5cf
mdiff: don't emit a diff header for empty trivial deltas
Mike Hommey <mh@glandium.org>
parents:
27432
diff
changeset
|
105 partial.hg: size=207 |
26644
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
106 0000: 48 47 31 30 47 5a 78 9c 63 60 60 98 17 ac 12 93 |HG10GZx.c``.....| |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
107 0010: f0 ac a9 23 45 70 cb bf 0d 5f 59 4e 4a 7f 79 21 |...#Ep..._YNJ.y!| |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
108 0020: 9b cc 40 24 20 a0 d7 ce 2c d1 38 25 cd 24 25 d5 |..@$ ...,.8%.$%.| |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
109 0030: d8 c2 22 cd 38 d9 24 cd 22 d5 c8 22 cd 24 cd 32 |..".8.$."..".$.2| |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
110 0040: d1 c2 d0 c4 c8 d2 32 d1 38 39 29 c9 34 cd d4 80 |......2.89).4...| |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
111 0050: ab 24 b5 b8 84 cb 40 c1 80 2b 2d 3f 9f 8b 2b 31 |.$....@..+-?..+1| |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
112 0060: 25 45 01 c8 80 9a d2 9b 65 fb e5 9e 45 bf 8d 7f |%E......e...E...| |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
113 0070: 9f c6 97 9f 2b 44 34 67 d9 ec 8e 0f a0 92 0b 75 |....+D4g.......u| |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
114 0080: 41 d6 24 59 18 a4 a4 9a a6 18 1a 5b 98 9b 5a 98 |A.$Y.......[..Z.| |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
115 0090: 9a 18 26 9b a6 19 98 1a 99 99 26 a6 18 9a 98 24 |..&.......&....$| |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
116 00a0: 26 59 a6 25 5a 98 a5 18 a6 24 71 41 35 b1 43 dc |&Y.%Z....$qA5.C.| |
27711
7a678a12a5cf
mdiff: don't emit a diff header for empty trivial deltas
Mike Hommey <mh@glandium.org>
parents:
27432
diff
changeset
|
117 00b0: 16 b2 83 f7 e9 45 8b d2 56 c7 a3 1f 82 52 d7 8a |.....E..V....R..| |
7a678a12a5cf
mdiff: don't emit a diff header for empty trivial deltas
Mike Hommey <mh@glandium.org>
parents:
27432
diff
changeset
|
118 00c0: 78 ed fc d5 76 f1 36 35 dc 05 00 36 ed 5e c7 |x...v.65...6.^.| |
26644
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
119 |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
120 $ echo "http://localhost:$HGPORT1/partial.hg" > server/.hg/clonebundles.manifest |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
121 $ hg clone -U http://localhost:$HGPORT partial-bundle |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
122 applying clone bundle from http://localhost:$HGPORT1/partial.hg |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
123 adding changesets |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
124 adding manifests |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
125 adding file changes |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
126 added 1 changesets with 1 changes to 1 files |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
127 finished applying clone bundle |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
128 searching for changes |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
129 adding changesets |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
130 adding manifests |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
131 adding file changes |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
132 added 1 changesets with 1 changes to 1 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34393
diff
changeset
|
133 new changesets aaff8d2ffbbf |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
134 |
26854
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
135 Incremental pull doesn't fetch bundle |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
136 |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
137 $ hg clone -r 53245c60e682 -U http://localhost:$HGPORT partial-clone |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
138 adding changesets |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
139 adding manifests |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
140 adding file changes |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
141 added 1 changesets with 1 changes to 1 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34393
diff
changeset
|
142 new changesets 53245c60e682 |
26854
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
143 |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
144 $ cd partial-clone |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
145 $ hg pull |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
146 pulling from http://localhost:$HGPORT/ |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
147 searching for changes |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
148 adding changesets |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
149 adding manifests |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
150 adding file changes |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
151 added 1 changesets with 1 changes to 1 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34393
diff
changeset
|
152 new changesets aaff8d2ffbbf |
26854
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
153 (run 'hg update' to get a working copy) |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
154 $ cd .. |
cb4b0ec54990
test-clonebundles.t: add test for incremental pull
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26761
diff
changeset
|
155 |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
156 Bundle with full content works |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
157 |
26643
d2e16419d3f4
clonebundle: support bundle2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26623
diff
changeset
|
158 $ hg -R server bundle --type gzip-v2 --base null -r tip full.hg |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
159 2 changesets found |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
160 |
26644
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
161 Again, we perform an extra check against bundle content changes. If this content |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
162 changes, clone bundles produced by new Mercurial versions may not be readable |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
163 by old clients. |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
164 |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
165 $ f --size --hexdump full.hg |
36965
b89a7ef29013
bundle: include advisory rev branch cache part in bundle2 bundle
Boris Feld <boris.feld@octobus.net>
parents:
35853
diff
changeset
|
166 full.hg: size=442 |
26644
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
167 0000: 48 47 32 30 00 00 00 0e 43 6f 6d 70 72 65 73 73 |HG20....Compress| |
29593
953839de96ab
bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29064
diff
changeset
|
168 0010: 69 6f 6e 3d 47 5a 78 9c 63 60 60 d0 e4 76 f6 70 |ion=GZx.c``..v.p| |
953839de96ab
bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29064
diff
changeset
|
169 0020: f4 73 77 75 0f f2 0f 0d 60 00 02 46 46 76 26 4e |.swu....`..FFv&N| |
953839de96ab
bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29064
diff
changeset
|
170 0030: c6 b2 d4 a2 e2 cc fc 3c 03 a3 bc a4 e4 8c c4 bc |.......<........| |
30211
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
171 0040: f4 d4 62 23 06 06 e6 19 40 f9 4d c1 2a 31 09 cf |..b#....@.M.*1..| |
29593
953839de96ab
bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29064
diff
changeset
|
172 0050: 9a 3a 52 04 b7 fc db f0 95 e5 a4 f4 97 17 b2 c9 |.:R.............| |
953839de96ab
bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29064
diff
changeset
|
173 0060: 0c 14 00 02 e6 d9 99 25 1a a7 a4 99 a4 a4 1a 5b |.......%.......[| |
953839de96ab
bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29064
diff
changeset
|
174 0070: 58 a4 19 27 9b a4 59 a4 1a 59 a4 99 a4 59 26 5a |X..'..Y..Y...Y&Z| |
953839de96ab
bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29064
diff
changeset
|
175 0080: 18 9a 18 59 5a 26 1a 27 27 25 99 a6 99 1a 70 95 |...YZ&.''%....p.| |
953839de96ab
bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29064
diff
changeset
|
176 0090: a4 16 97 70 19 28 18 70 a5 e5 e7 73 71 25 a6 a4 |...p.(.p...sq%..| |
30211
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
177 00a0: 28 00 19 20 17 af fa df ab ff 7b 3f fb 92 dc 8b |(.. ......{?....| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
178 00b0: 1f 62 bb 9e b7 d7 d9 87 3d 5a 44 89 2f b0 99 87 |.b......=ZD./...| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
179 00c0: ec e2 54 63 43 e3 b4 64 43 73 23 33 43 53 0b 63 |..TcC..dCs#3CS.c| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
180 00d0: d3 14 23 03 a0 fb 2c 2c 0c d3 80 1e 30 49 49 b1 |..#...,,....0II.| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
181 00e0: 4c 4a 32 48 33 30 b0 34 42 b8 38 29 b1 08 e2 62 |LJ2H30.4B.8)...b| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
182 00f0: 20 03 6a ca c2 2c db 2f f7 2c fa 6d fc fb 34 be | .j..,./.,.m..4.| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
183 0100: fc 5c 21 a2 39 cb 66 77 7c 00 0d c3 59 17 14 58 |.\!.9.fw|...Y..X| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
184 0110: 49 16 06 29 a9 a6 29 86 c6 16 e6 a6 16 a6 26 86 |I..)..).......&.| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
185 0120: c9 a6 69 06 a6 46 66 a6 89 29 86 26 26 89 49 96 |..i..Ff..).&&.I.| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
186 0130: 69 89 16 66 29 86 29 49 5c 20 07 3e 16 fe 23 ae |i..f).)I\ .>..#.| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
187 0140: 26 da 1c ab 10 1f d1 f8 e3 b3 ef cd dd fc 0c 93 |&...............| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
188 0150: 88 75 34 36 75 04 82 55 17 14 36 a4 38 10 04 d8 |.u46u..U..6.8...| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
189 0160: 21 01 9a b1 83 f7 e9 45 8b d2 56 c7 a3 1f 82 52 |!......E..V....R| |
6b0741d6d234
changegroup: skip delta when the underlying revlog do not use them
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
29845
diff
changeset
|
190 0170: d7 8a 78 ed fc d5 76 f1 36 25 81 89 c7 ad ec 90 |..x...v.6%......| |
36965
b89a7ef29013
bundle: include advisory rev branch cache part in bundle2 bundle
Boris Feld <boris.feld@octobus.net>
parents:
35853
diff
changeset
|
191 0180: 54 47 75 2b 89 48 b1 b2 62 ce 8e ce 1e ae 56 41 |TGu+.H..b.....VA| |
b89a7ef29013
bundle: include advisory rev branch cache part in bundle2 bundle
Boris Feld <boris.feld@octobus.net>
parents:
35853
diff
changeset
|
192 0190: ae 61 ba 4e 41 8e 7e ce 1e ba 60 01 a0 14 23 58 |.a.NA.~...`...#X| |
b89a7ef29013
bundle: include advisory rev branch cache part in bundle2 bundle
Boris Feld <boris.feld@octobus.net>
parents:
35853
diff
changeset
|
193 01a0: 81 35 c8 7d 40 cc 04 e2 a4 a4 a6 25 96 e6 94 60 |.5.}@......%...`| |
b89a7ef29013
bundle: include advisory rev branch cache part in bundle2 bundle
Boris Feld <boris.feld@octobus.net>
parents:
35853
diff
changeset
|
194 01b0: 33 17 5f 54 00 00 01 1b 0a ec |3._T......| |
26644
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
195 |
26623
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
196 $ echo "http://localhost:$HGPORT1/full.hg" > server/.hg/clonebundles.manifest |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
197 $ hg clone -U http://localhost:$HGPORT full-bundle |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
198 applying clone bundle from http://localhost:$HGPORT1/full.hg |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
199 adding changesets |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
200 adding manifests |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
201 adding file changes |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
202 added 2 changesets with 2 changes to 2 files |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
203 finished applying clone bundle |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
204 searching for changes |
5a95fe44121d
clonebundles: support for seeding clones from pre-generated bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
diff
changeset
|
205 no changes found |
26644
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
206 |
26857
e5a1df51bb25
wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26855
diff
changeset
|
207 Feature works over SSH |
e5a1df51bb25
wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26855
diff
changeset
|
208 |
33335
72f051f9a7d8
tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
33286
diff
changeset
|
209 $ hg clone -U -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/server ssh-full-clone |
26857
e5a1df51bb25
wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26855
diff
changeset
|
210 applying clone bundle from http://localhost:$HGPORT1/full.hg |
e5a1df51bb25
wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26855
diff
changeset
|
211 adding changesets |
e5a1df51bb25
wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26855
diff
changeset
|
212 adding manifests |
e5a1df51bb25
wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26855
diff
changeset
|
213 adding file changes |
e5a1df51bb25
wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26855
diff
changeset
|
214 added 2 changesets with 2 changes to 2 files |
e5a1df51bb25
wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26855
diff
changeset
|
215 finished applying clone bundle |
e5a1df51bb25
wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26855
diff
changeset
|
216 searching for changes |
e5a1df51bb25
wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26855
diff
changeset
|
217 no changes found |
e5a1df51bb25
wireproto: move clonebundles command from extension (issue4931)
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26855
diff
changeset
|
218 |
26644
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
219 Entry with unknown BUNDLESPEC is filtered and not used |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
220 |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
221 $ cat > server/.hg/clonebundles.manifest << EOF |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
222 > http://bad.entry1 BUNDLESPEC=UNKNOWN |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
223 > http://bad.entry2 BUNDLESPEC=xz-v1 |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
224 > http://bad.entry3 BUNDLESPEC=none-v100 |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
225 > http://localhost:$HGPORT1/full.hg BUNDLESPEC=gzip-v2 |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
226 > EOF |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
227 |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
228 $ hg clone -U http://localhost:$HGPORT filter-unknown-type |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
229 applying clone bundle from http://localhost:$HGPORT1/full.hg |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
230 adding changesets |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
231 adding manifests |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
232 adding file changes |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
233 added 2 changesets with 2 changes to 2 files |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
234 finished applying clone bundle |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
235 searching for changes |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
236 no changes found |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
237 |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
238 Automatic fallback when all entries are filtered |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
239 |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
240 $ cat > server/.hg/clonebundles.manifest << EOF |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
241 > http://bad.entry BUNDLESPEC=UNKNOWN |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
242 > EOF |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
243 |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
244 $ hg clone -U http://localhost:$HGPORT filter-all |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
245 no compatible clone bundles available on server; falling back to regular clone |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
246 (you may want to report this to the server operator) |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
247 requesting all changes |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
248 adding changesets |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
249 adding manifests |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
250 adding file changes |
74de1c59f71c
clonebundles: filter on bundle specification
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26643
diff
changeset
|
251 added 2 changesets with 2 changes to 2 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34393
diff
changeset
|
252 new changesets 53245c60e682:aaff8d2ffbbf |
26645
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
253 |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
254 URLs requiring SNI are filtered in Python <2.7.9 |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
255 |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
256 $ cp full.hg sni.hg |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
257 $ cat > server/.hg/clonebundles.manifest << EOF |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
258 > http://localhost:$HGPORT1/sni.hg REQUIRESNI=true |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
259 > http://localhost:$HGPORT1/full.hg |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
260 > EOF |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
261 |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
262 #if sslcontext |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
263 Python 2.7.9+ support SNI |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
264 |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
265 $ hg clone -U http://localhost:$HGPORT sni-supported |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
266 applying clone bundle from http://localhost:$HGPORT1/sni.hg |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
267 adding changesets |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
268 adding manifests |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
269 adding file changes |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
270 added 2 changesets with 2 changes to 2 files |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
271 finished applying clone bundle |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
272 searching for changes |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
273 no changes found |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
274 #else |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
275 Python <2.7.9 will filter SNI URLs |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
276 |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
277 $ hg clone -U http://localhost:$HGPORT sni-unsupported |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
278 applying clone bundle from http://localhost:$HGPORT1/full.hg |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
279 adding changesets |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
280 adding manifests |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
281 adding file changes |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
282 added 2 changesets with 2 changes to 2 files |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
283 finished applying clone bundle |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
284 searching for changes |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
285 no changes found |
2faa7671a4b3
clonebundles: filter on SNI requirement
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26644
diff
changeset
|
286 #endif |
26648
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
287 |
26761
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
288 Stream clone bundles are supported |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
289 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
290 $ hg -R server debugcreatestreamclonebundle packed.hg |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
291 writing 613 bytes for 4 files |
26932
eb49ffa39fe2
test: use generaldelta in 'test-clonebundle.t'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26857
diff
changeset
|
292 bundle requirements: generaldelta, revlogv1 |
26761
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
293 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
294 No bundle spec should work |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
295 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
296 $ cat > server/.hg/clonebundles.manifest << EOF |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
297 > http://localhost:$HGPORT1/packed.hg |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
298 > EOF |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
299 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
300 $ hg clone -U http://localhost:$HGPORT stream-clone-no-spec |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
301 applying clone bundle from http://localhost:$HGPORT1/packed.hg |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
302 4 files to transfer, 613 bytes of data |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
303 transferred 613 bytes in *.* seconds (*) (glob) |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
304 finished applying clone bundle |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
305 searching for changes |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
306 no changes found |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
307 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
308 Bundle spec without parameters should work |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
309 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
310 $ cat > server/.hg/clonebundles.manifest << EOF |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
311 > http://localhost:$HGPORT1/packed.hg BUNDLESPEC=none-packed1 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
312 > EOF |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
313 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
314 $ hg clone -U http://localhost:$HGPORT stream-clone-vanilla-spec |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
315 applying clone bundle from http://localhost:$HGPORT1/packed.hg |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
316 4 files to transfer, 613 bytes of data |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
317 transferred 613 bytes in *.* seconds (*) (glob) |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
318 finished applying clone bundle |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
319 searching for changes |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
320 no changes found |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
321 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
322 Bundle spec with format requirements should work |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
323 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
324 $ cat > server/.hg/clonebundles.manifest << EOF |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
325 > http://localhost:$HGPORT1/packed.hg BUNDLESPEC=none-packed1;requirements%3Drevlogv1 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
326 > EOF |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
327 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
328 $ hg clone -U http://localhost:$HGPORT stream-clone-supported-requirements |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
329 applying clone bundle from http://localhost:$HGPORT1/packed.hg |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
330 4 files to transfer, 613 bytes of data |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
331 transferred 613 bytes in *.* seconds (*) (glob) |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
332 finished applying clone bundle |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
333 searching for changes |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
334 no changes found |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
335 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
336 Stream bundle spec with unknown requirements should be filtered out |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
337 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
338 $ cat > server/.hg/clonebundles.manifest << EOF |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
339 > http://localhost:$HGPORT1/packed.hg BUNDLESPEC=none-packed1;requirements%3Drevlogv42 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
340 > EOF |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
341 |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
342 $ hg clone -U http://localhost:$HGPORT stream-clone-unsupported-requirements |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
343 no compatible clone bundles available on server; falling back to regular clone |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
344 (you may want to report this to the server operator) |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
345 requesting all changes |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
346 adding changesets |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
347 adding manifests |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
348 adding file changes |
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
349 added 2 changesets with 2 changes to 2 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34393
diff
changeset
|
350 new changesets 53245c60e682:aaff8d2ffbbf |
26761
8270ee357dd9
exchange: support streaming clone bundles in clone bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26732
diff
changeset
|
351 |
26648
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
352 Set up manifest for testing preferences |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
353 (Remember, the TYPE does not have to match reality - the URL is |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
354 important) |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
355 |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
356 $ cp full.hg gz-a.hg |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
357 $ cp full.hg gz-b.hg |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
358 $ cp full.hg bz2-a.hg |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
359 $ cp full.hg bz2-b.hg |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
360 $ cat > server/.hg/clonebundles.manifest << EOF |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
361 > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2 extra=a |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
362 > http://localhost:$HGPORT1/bz2-a.hg BUNDLESPEC=bzip2-v2 extra=a |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
363 > http://localhost:$HGPORT1/gz-b.hg BUNDLESPEC=gzip-v2 extra=b |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
364 > http://localhost:$HGPORT1/bz2-b.hg BUNDLESPEC=bzip2-v2 extra=b |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
365 > EOF |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
366 |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
367 Preferring an undefined attribute will take first entry |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
368 |
27737
482eb357fe98
exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27736
diff
changeset
|
369 $ hg --config ui.clonebundleprefers=foo=bar clone -U http://localhost:$HGPORT prefer-foo |
26648
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
370 applying clone bundle from http://localhost:$HGPORT1/gz-a.hg |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
371 adding changesets |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
372 adding manifests |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
373 adding file changes |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
374 added 2 changesets with 2 changes to 2 files |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
375 finished applying clone bundle |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
376 searching for changes |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
377 no changes found |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
378 |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
379 Preferring bz2 type will download first entry of that type |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
380 |
27737
482eb357fe98
exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27736
diff
changeset
|
381 $ hg --config ui.clonebundleprefers=COMPRESSION=bzip2 clone -U http://localhost:$HGPORT prefer-bz |
26648
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
382 applying clone bundle from http://localhost:$HGPORT1/bz2-a.hg |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
383 adding changesets |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
384 adding manifests |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
385 adding file changes |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
386 added 2 changesets with 2 changes to 2 files |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
387 finished applying clone bundle |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
388 searching for changes |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
389 no changes found |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
390 |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
391 Preferring multiple values of an option works |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
392 |
27737
482eb357fe98
exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27736
diff
changeset
|
393 $ hg --config ui.clonebundleprefers=COMPRESSION=unknown,COMPRESSION=bzip2 clone -U http://localhost:$HGPORT prefer-multiple-bz |
26648
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
394 applying clone bundle from http://localhost:$HGPORT1/bz2-a.hg |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
395 adding changesets |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
396 adding manifests |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
397 adding file changes |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
398 added 2 changesets with 2 changes to 2 files |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
399 finished applying clone bundle |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
400 searching for changes |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
401 no changes found |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
402 |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
403 Sorting multiple values should get us back to original first entry |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
404 |
27737
482eb357fe98
exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27736
diff
changeset
|
405 $ hg --config ui.clonebundleprefers=BUNDLESPEC=unknown,BUNDLESPEC=gzip-v2,BUNDLESPEC=bzip2-v2 clone -U http://localhost:$HGPORT prefer-multiple-gz |
26648
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
406 applying clone bundle from http://localhost:$HGPORT1/gz-a.hg |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
407 adding changesets |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
408 adding manifests |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
409 adding file changes |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
410 added 2 changesets with 2 changes to 2 files |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
411 finished applying clone bundle |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
412 searching for changes |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
413 no changes found |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
414 |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
415 Preferring multiple attributes has correct order |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
416 |
27737
482eb357fe98
exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27736
diff
changeset
|
417 $ hg --config ui.clonebundleprefers=extra=b,BUNDLESPEC=bzip2-v2 clone -U http://localhost:$HGPORT prefer-separate-attributes |
26648
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
418 applying clone bundle from http://localhost:$HGPORT1/bz2-b.hg |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
419 adding changesets |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
420 adding manifests |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
421 adding file changes |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
422 added 2 changesets with 2 changes to 2 files |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
423 finished applying clone bundle |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
424 searching for changes |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
425 no changes found |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
426 |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
427 Test where attribute is missing from some entries |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
428 |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
429 $ cat > server/.hg/clonebundles.manifest << EOF |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
430 > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2 |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
431 > http://localhost:$HGPORT1/bz2-a.hg BUNDLESPEC=bzip2-v2 |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
432 > http://localhost:$HGPORT1/gz-b.hg BUNDLESPEC=gzip-v2 extra=b |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
433 > http://localhost:$HGPORT1/bz2-b.hg BUNDLESPEC=bzip2-v2 extra=b |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
434 > EOF |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
435 |
27737
482eb357fe98
exchange: make clonebundleprefers non-experimental
Gregory Szorc <gregory.szorc@gmail.com>
parents:
27736
diff
changeset
|
436 $ hg --config ui.clonebundleprefers=extra=b clone -U http://localhost:$HGPORT prefer-partially-defined-attribute |
26648
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
437 applying clone bundle from http://localhost:$HGPORT1/gz-b.hg |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
438 adding changesets |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
439 adding manifests |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
440 adding file changes |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
441 added 2 changesets with 2 changes to 2 files |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
442 finished applying clone bundle |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
443 searching for changes |
c347d532bb56
exchange: support sorting URLs by client-side preferences
Gregory Szorc <gregory.szorc@gmail.com>
parents:
26645
diff
changeset
|
444 no changes found |
34363
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
445 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34386
diff
changeset
|
446 Test interaction between clone bundles and --stream |
34363
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
447 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
448 A manifest with just a gzip bundle |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
449 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
450 $ cat > server/.hg/clonebundles.manifest << EOF |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
451 > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
452 > EOF |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
453 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34386
diff
changeset
|
454 $ hg clone -U --stream http://localhost:$HGPORT uncompressed-gzip |
34364
ff406f3e57b2
exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34363
diff
changeset
|
455 no compatible clone bundles available on server; falling back to regular clone |
ff406f3e57b2
exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34363
diff
changeset
|
456 (you may want to report this to the server operator) |
34363
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
457 streaming all changes |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
458 4 files to transfer, 613 bytes of data |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
459 transferred 613 bytes in * seconds (*) (glob) |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
460 searching for changes |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
461 no changes found |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
462 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
463 A manifest with a stream clone but no BUNDLESPEC |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
464 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
465 $ cat > server/.hg/clonebundles.manifest << EOF |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
466 > http://localhost:$HGPORT1/packed.hg |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
467 > EOF |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
468 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34386
diff
changeset
|
469 $ hg clone -U --stream http://localhost:$HGPORT uncompressed-no-bundlespec |
34364
ff406f3e57b2
exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34363
diff
changeset
|
470 no compatible clone bundles available on server; falling back to regular clone |
ff406f3e57b2
exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34363
diff
changeset
|
471 (you may want to report this to the server operator) |
34363
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
472 streaming all changes |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
473 4 files to transfer, 613 bytes of data |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
474 transferred 613 bytes in * seconds (*) (glob) |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
475 searching for changes |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
476 no changes found |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
477 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
478 A manifest with a gzip bundle and a stream clone |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
479 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
480 $ cat > server/.hg/clonebundles.manifest << EOF |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
481 > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
482 > http://localhost:$HGPORT1/packed.hg BUNDLESPEC=none-packed1 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
483 > EOF |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
484 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34386
diff
changeset
|
485 $ hg clone -U --stream http://localhost:$HGPORT uncompressed-gzip-packed |
34364
ff406f3e57b2
exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34363
diff
changeset
|
486 applying clone bundle from http://localhost:$HGPORT1/packed.hg |
34363
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
487 4 files to transfer, 613 bytes of data |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
488 transferred 613 bytes in * seconds (*) (glob) |
34364
ff406f3e57b2
exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34363
diff
changeset
|
489 finished applying clone bundle |
34363
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
490 searching for changes |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
491 no changes found |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
492 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
493 A manifest with a gzip bundle and stream clone with supported requirements |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
494 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
495 $ cat > server/.hg/clonebundles.manifest << EOF |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
496 > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
497 > http://localhost:$HGPORT1/packed.hg BUNDLESPEC=none-packed1;requirements%3Drevlogv1 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
498 > EOF |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
499 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34386
diff
changeset
|
500 $ hg clone -U --stream http://localhost:$HGPORT uncompressed-gzip-packed-requirements |
34364
ff406f3e57b2
exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34363
diff
changeset
|
501 applying clone bundle from http://localhost:$HGPORT1/packed.hg |
34363
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
502 4 files to transfer, 613 bytes of data |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
503 transferred 613 bytes in * seconds (*) (glob) |
34364
ff406f3e57b2
exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34363
diff
changeset
|
504 finished applying clone bundle |
34363
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
505 searching for changes |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
506 no changes found |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
507 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
508 A manifest with a gzip bundle and a stream clone with unsupported requirements |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
509 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
510 $ cat > server/.hg/clonebundles.manifest << EOF |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
511 > http://localhost:$HGPORT1/gz-a.hg BUNDLESPEC=gzip-v2 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
512 > http://localhost:$HGPORT1/packed.hg BUNDLESPEC=none-packed1;requirements%3Drevlogv42 |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
513 > EOF |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
514 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34386
diff
changeset
|
515 $ hg clone -U --stream http://localhost:$HGPORT uncompressed-gzip-packed-unsupported-requirements |
34364
ff406f3e57b2
exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34363
diff
changeset
|
516 no compatible clone bundles available on server; falling back to regular clone |
ff406f3e57b2
exchange: perform stream clone with clone bundle with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34363
diff
changeset
|
517 (you may want to report this to the server operator) |
34363
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
518 streaming all changes |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
519 4 files to transfer, 613 bytes of data |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
520 transferred 613 bytes in * seconds (*) (glob) |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
521 searching for changes |
880e47351d1a
tests: add tests for clone bundles with --uncompressed
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
522 no changes found |
35565
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
523 |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
524 Test clone bundle retrieved through bundle2 |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
525 |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
526 $ cat << EOF >> $HGRCPATH |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
527 > [extensions] |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
528 > largefiles= |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
529 > EOF |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
530 $ killdaemons.py |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
531 $ hg -R server serve -d -p $HGPORT --pid-file hg.pid --accesslog access.log |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
532 $ cat hg.pid >> $DAEMON_PIDS |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
533 |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
534 $ hg -R server debuglfput gz-a.hg |
36965
b89a7ef29013
bundle: include advisory rev branch cache part in bundle2 bundle
Boris Feld <boris.feld@octobus.net>
parents:
35853
diff
changeset
|
535 14ee2f0b3f1d14aeeb2fe037e09fc295c3cf59f5 |
35565
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
536 |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
537 $ cat > server/.hg/clonebundles.manifest << EOF |
36965
b89a7ef29013
bundle: include advisory rev branch cache part in bundle2 bundle
Boris Feld <boris.feld@octobus.net>
parents:
35853
diff
changeset
|
538 > largefile://14ee2f0b3f1d14aeeb2fe037e09fc295c3cf59f5 BUNDLESPEC=gzip-v2 |
35565
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
539 > EOF |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
540 |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
541 $ hg clone -U http://localhost:$HGPORT largefile-provided --traceback |
36965
b89a7ef29013
bundle: include advisory rev branch cache part in bundle2 bundle
Boris Feld <boris.feld@octobus.net>
parents:
35853
diff
changeset
|
542 applying clone bundle from largefile://14ee2f0b3f1d14aeeb2fe037e09fc295c3cf59f5 |
35565
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
543 adding changesets |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
544 adding manifests |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
545 adding file changes |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
546 added 2 changesets with 2 changes to 2 files |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
547 finished applying clone bundle |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
548 searching for changes |
bdae51a83dfb
clonebundle: make it possible to retrieve the initial bundle through largefile
Boris Feld <boris.feld@octobus.net>
parents:
35268
diff
changeset
|
549 no changes found |