Mercurial > hg
annotate tests/test-largefiles-wireproto.t @ 33377:5d63e5f40bea
revset: define successors revset
This revset returns all successors, including transit nodes and the source
nodes (to be consistent with existing revsets like "ancestors").
To filter out transit nodes, use `successors(X)-obsolete()`.
To filter out divergent case, use `successors(X)-divergent()-obsolete()`.
The revset could be useful to define rebase destination, like:
`max(successors(BASE)-divergent()-obsolete())`. The `max` is to deal with
splits.
There are other implementations where `successors` returns just one level of
successors, and `allsuccessors` returns everything. I think `successors`
returning all successors by default is more user friendly. We have seen
cases in production where people use 1-level `successors` while they really
want `allsuccessors`. So it seems better to just have one single revset
returning all successors by default to avoid user errors.
In the future we might want to add `depth` keyword argument to it and for
other revsets like `ancestors` etc. Or even build some flexible indexing
syntax [1] to satisfy people having the depth limit requirement.
[1]: https://www.mercurial-scm.org/pipermail/mercurial-devel/2017-July/101140.html
author | Jun Wu <quark@fb.com> |
---|---|
date | Mon, 10 Jul 2017 10:56:40 -0700 |
parents | 72f051f9a7d8 |
children | 9a0f33f497cd |
rev | line source |
---|---|
23139
e53f6b72a0e4
spelling: fixes from proofreading of spell checker issues
Mads Kiilerich <madski@unity3d.com>
parents:
21424
diff
changeset
|
1 This file contains testcases that tend to be related to the wire protocol part |
e53f6b72a0e4
spelling: fixes from proofreading of spell checker issues
Mads Kiilerich <madski@unity3d.com>
parents:
21424
diff
changeset
|
2 of largefiles. |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
3 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
4 $ USERCACHE="$TESTTMP/cache"; export USERCACHE |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
5 $ mkdir "${USERCACHE}" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
6 $ cat >> $HGRCPATH <<EOF |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
7 > [extensions] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
8 > largefiles= |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
9 > purge= |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
10 > rebase= |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
11 > transplant= |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
12 > [phases] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
13 > publish=False |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
14 > [largefiles] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
15 > minsize=2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
16 > patterns=glob:**.dat |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
17 > usercache=${USERCACHE} |
26417
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
18 > [web] |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
19 > allow_archive = zip |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
20 > [hooks] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
21 > precommit=sh -c "echo \\"Invoking status precommit hook\\"; hg status" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
22 > EOF |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
23 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
24 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
25 #if serve |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
26 vanilla clients not locked out from largefiles servers on vanilla repos |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
27 $ mkdir r1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
28 $ cd r1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
29 $ hg init |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
30 $ echo c1 > f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
31 $ hg add f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
32 $ hg commit -m "m1" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
33 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
34 A f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
35 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
36 $ hg serve -R r1 -d -p $HGPORT --pid-file hg.pid |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
37 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
38 $ hg --config extensions.largefiles=! clone http://localhost:$HGPORT r2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
39 requesting all changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
40 adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
41 adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
42 adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
43 added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
44 updating to branch default |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
45 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
46 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
47 largefiles clients still work with vanilla servers |
28549 | 48 $ hg serve --config extensions.largefiles=! -R r1 -d -p $HGPORT1 --pid-file hg.pid |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
49 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
50 $ hg clone http://localhost:$HGPORT1 r3 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
51 requesting all changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
52 adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
53 adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
54 adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
55 added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
56 updating to branch default |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
57 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
58 #endif |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
59 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
60 vanilla clients locked out from largefiles http repos |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
61 $ mkdir r4 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
62 $ cd r4 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
63 $ hg init |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
64 $ echo c1 > f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
65 $ hg add --large f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
66 $ hg commit -m "m1" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
67 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
68 A f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
69 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
70 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
71 largefiles can be pushed locally (issue3583) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
72 $ hg init dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
73 $ cd r4 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
74 $ hg outgoing ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
75 comparing with ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
76 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
77 changeset: 0:639881c12b4c |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
78 tag: tip |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
79 user: test |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
80 date: Thu Jan 01 00:00:00 1970 +0000 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
81 summary: m1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
82 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
83 $ hg push ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
84 pushing to ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
85 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
86 adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
87 adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
88 adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
89 added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
91 exit code with nothing outgoing (issue3611) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
92 $ hg outgoing ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
93 comparing with ../dest |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
94 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
95 no changes found |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
96 [1] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
97 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
98 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
99 #if serve |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
100 $ hg serve -R r4 -d -p $HGPORT2 --pid-file hg.pid |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
101 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
102 $ hg --config extensions.largefiles=! clone http://localhost:$HGPORT2 r5 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
103 abort: remote error: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
104 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
105 This repository uses the largefiles extension. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
106 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
107 Please enable it in your Mercurial config file. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
108 [255] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
109 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
110 used all HGPORTs, kill all daemons |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
111 $ killdaemons.py |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
112 #endif |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
113 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
114 vanilla clients locked out from largefiles ssh repos |
33335
72f051f9a7d8
tests: quote $PYTHON for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
33286
diff
changeset
|
115 $ hg --config extensions.largefiles=! clone -e "\"$PYTHON\" \"$TESTDIR/dummyssh\"" ssh://user@dummy/r4 r5 |
25243
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
116 remote: |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
117 remote: This repository uses the largefiles extension. |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
118 remote: |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
119 remote: Please enable it in your Mercurial config file. |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
120 remote: |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
121 remote: - |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
122 abort: remote error |
d65243d28749
sshpeer: break "OutOfBandError" feature for ssh (BC)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
25125
diff
changeset
|
123 (check previous remote output) |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
124 [255] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
125 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
126 #if serve |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
127 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
128 largefiles clients refuse to push largefiles repos to vanilla servers |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
129 $ mkdir r6 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
130 $ cd r6 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
131 $ hg init |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
132 $ echo c1 > f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
133 $ hg add f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
134 $ hg commit -m "m1" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
135 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
136 A f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
137 $ cat >> .hg/hgrc <<! |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
138 > [web] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
139 > push_ssl = false |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
140 > allow_push = * |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
141 > ! |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
142 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
143 $ hg clone r6 r7 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
144 updating to branch default |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
145 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
146 $ cd r7 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
147 $ echo c2 > f2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
148 $ hg add --large f2 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
149 $ hg commit -m "m2" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
150 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
151 A f2 |
29421
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
152 $ hg verify --large |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
153 checking changesets |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
154 checking manifests |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
155 crosschecking files in changesets and manifests |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
156 checking files |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
157 2 files, 2 changesets, 2 total revisions |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
158 searching 1 changesets for largefiles |
ecbbf4d56ee8
largefiles: check file in the repo store before checking remotely (issue5257)
liscju <piotr.listkiewicz@gmail.com>
parents:
29379
diff
changeset
|
159 verified existence of 1 revisions of 1 largefiles |
28549 | 160 $ hg serve --config extensions.largefiles=! -R ../r6 -d -p $HGPORT --pid-file ../hg.pid |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
161 $ cat ../hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
162 $ hg push http://localhost:$HGPORT |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
163 pushing to http://localhost:$HGPORT/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
164 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
165 abort: http://localhost:$HGPORT/ does not appear to be a largefile store |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
166 [255] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
167 $ cd .. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
168 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
169 putlfile errors are shown (issue3123) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
170 Corrupt the cached largefile in r7 and move it out of the servers usercache |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
171 $ mv r7/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 . |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
172 $ echo 'client side corruption' > r7/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
173 $ rm "$USERCACHE/4cdac4d8b084d0b599525cf732437fb337d422a8" |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
174 $ hg init empty |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
175 $ hg serve -R empty -d -p $HGPORT1 --pid-file hg.pid \ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
176 > --config 'web.allow_push=*' --config web.push_ssl=False |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
177 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
178 $ hg push -R r7 http://localhost:$HGPORT1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
179 pushing to http://localhost:$HGPORT1/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
180 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
181 remote: largefiles: failed to put 4cdac4d8b084d0b599525cf732437fb337d422a8 into store: largefile contents do not match hash |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
182 abort: remotestore: could not put $TESTTMP/r7/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 to remote store http://localhost:$HGPORT1/ (glob) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
183 [255] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
184 $ mv 4cdac4d8b084d0b599525cf732437fb337d422a8 r7/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
185 Push of file that exists on server but is corrupted - magic healing would be nice ... but too magic |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
186 $ echo "server side corruption" > empty/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
187 $ hg push -R r7 http://localhost:$HGPORT1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
188 pushing to http://localhost:$HGPORT1/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
189 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
190 remote: adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
191 remote: adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
192 remote: adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
193 remote: added 2 changesets with 2 changes to 2 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
194 $ cat empty/.hg/largefiles/4cdac4d8b084d0b599525cf732437fb337d422a8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
195 server side corruption |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
196 $ rm -rf empty |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
197 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
198 Push a largefiles repository to a served empty repository |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
199 $ hg init r8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
200 $ echo c3 > r8/f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
201 $ hg add --large r8/f1 -R r8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
202 $ hg commit -m "m1" -R r8 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
203 Invoking status precommit hook |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
204 A f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
205 $ hg init empty |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
206 $ hg serve -R empty -d -p $HGPORT2 --pid-file hg.pid \ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
207 > --config 'web.allow_push=*' --config web.push_ssl=False |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
208 $ cat hg.pid >> $DAEMON_PIDS |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
209 $ rm "${USERCACHE}"/* |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
210 $ hg push -R r8 http://localhost:$HGPORT2/#default |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
211 pushing to http://localhost:$HGPORT2/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
212 searching for changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
213 remote: adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
214 remote: adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
215 remote: adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
216 remote: added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
217 $ [ -f "${USERCACHE}"/02a439e5c31c526465ab1a0ca1f431f76b827b90 ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
218 $ [ -f empty/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
219 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
220 Clone over http, no largefiles pulled on clone. |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
221 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
222 $ hg clone http://localhost:$HGPORT2/#default http-clone -U |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
223 adding changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
224 adding manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
225 adding file changes |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
226 added 1 changesets with 1 changes to 1 files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
227 |
26417
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
228 Archive contains largefiles |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
229 >>> import urllib2, os |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
230 >>> u = 'http://localhost:%s/archive/default.zip' % os.environ['HGPORT2'] |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
231 >>> with open('archive.zip', 'w') as f: |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
232 ... f.write(urllib2.urlopen(u).read()) |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
233 $ unzip -t archive.zip |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
234 Archive: archive.zip |
29562
cda10ff3175a
tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents:
29421
diff
changeset
|
235 testing: empty-default/.hg_archival.txt*OK (glob) |
cda10ff3175a
tests: glob whitespace between path and OK in unzip(1) output
Augie Fackler <augie@google.com>
parents:
29421
diff
changeset
|
236 testing: empty-default/f1*OK (glob) |
26417
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
237 No errors detected in compressed data of archive.zip. |
9a466b9f9792
largefiles: restore archiving largefiles with hgweb (issue4859)
Matt Harbison <matt_harbison@yahoo.com>
parents:
25495
diff
changeset
|
238 |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
239 test 'verify' with remotestore: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
240 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
241 $ rm "${USERCACHE}"/02a439e5c31c526465ab1a0ca1f431f76b827b90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
242 $ mv empty/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 . |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
243 $ hg -R http-clone verify --large --lfa |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
244 checking changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
245 checking manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
246 crosschecking files in changesets and manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
247 checking files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
248 1 files, 1 changesets, 1 total revisions |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
249 searching 1 changesets for largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
250 changeset 0:cf03e5bb9936: f1 missing |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
251 verified existence of 1 revisions of 1 largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
252 [1] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
253 $ mv 02a439e5c31c526465ab1a0ca1f431f76b827b90 empty/.hg/largefiles/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
254 $ hg -R http-clone -q verify --large --lfa |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
255 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
256 largefiles pulled on update - a largefile missing on the server: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
257 $ mv empty/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 . |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
258 $ hg -R http-clone up --config largefiles.usercache=http-clone-usercache |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
259 getting changed largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
260 f1: largefile 02a439e5c31c526465ab1a0ca1f431f76b827b90 not available from http://localhost:$HGPORT2/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
261 0 largefiles updated, 0 removed |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
262 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
263 $ hg -R http-clone st |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
264 ! f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
265 $ hg -R http-clone up -Cqr null |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
266 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
267 largefiles pulled on update - a largefile corrupted on the server: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
268 $ echo corruption > empty/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
269 $ hg -R http-clone up --config largefiles.usercache=http-clone-usercache |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
270 getting changed largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
271 f1: data corruption (expected 02a439e5c31c526465ab1a0ca1f431f76b827b90, got 6a7bb2556144babe3899b25e5428123735bb1e27) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
272 0 largefiles updated, 0 removed |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
273 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
274 $ hg -R http-clone st |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
275 ! f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
276 $ [ ! -f http-clone/.hg/largefiles/02a439e5c31c526465ab1a0ca1f431f76b827b90 ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
277 $ [ ! -f http-clone/f1 ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
278 $ [ ! -f http-clone-usercache ] |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
279 $ hg -R http-clone verify --large --lfc |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
280 checking changesets |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
281 checking manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
282 crosschecking files in changesets and manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
283 checking files |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
284 1 files, 1 changesets, 1 total revisions |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
285 searching 1 changesets for largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
286 verified contents of 1 revisions of 1 largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
287 $ hg -R http-clone up -Cqr null |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
288 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
289 largefiles pulled on update - no server side problems: |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
290 $ mv 02a439e5c31c526465ab1a0ca1f431f76b827b90 empty/.hg/largefiles/ |
25125
bd625cd4e5e7
progress: get the extremely verbose output out of default debug
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23139
diff
changeset
|
291 $ hg -R http-clone --debug up --config largefiles.usercache=http-clone-usercache --config progress.debug=true |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
292 resolving manifests |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
293 branchmerge: False, force: False, partial: False |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
294 ancestor: 000000000000, local: 000000000000+, remote: cf03e5bb9936 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
295 .hglf/f1: remote created -> g |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
296 getting .hglf/f1 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
297 updating: .hglf/f1 1/1 files (100.00%) |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
298 getting changed largefiles |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
299 using http://localhost:$HGPORT2/ |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
300 sending capabilities command |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
301 sending batch command |
28463
19b4a2087dfc
largefiles: specify unit for ui.progress when operating on files
Anton Shestakov <av6@dwimlabs.net>
parents:
26417
diff
changeset
|
302 getting largefiles: 0/1 files (0.00%) |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
303 getting f1:02a439e5c31c526465ab1a0ca1f431f76b827b90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
304 sending getlfile command |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
305 found 02a439e5c31c526465ab1a0ca1f431f76b827b90 in store |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
306 1 largefiles updated, 0 removed |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
307 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
308 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
309 $ ls http-clone-usercache/* |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
310 http-clone-usercache/02a439e5c31c526465ab1a0ca1f431f76b827b90 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
311 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
312 $ rm -rf empty http-clone* |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
313 |
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
314 used all HGPORTs, kill all daemons |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
315 $ killdaemons.py |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
316 |
29068
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
317 largefiles should batch verify remote calls |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
318 |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
319 $ hg init batchverifymain |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
320 $ cd batchverifymain |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
321 $ echo "aaa" >> a |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
322 $ hg add --large a |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
323 $ hg commit -m "a" |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
324 Invoking status precommit hook |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
325 A a |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
326 $ echo "bbb" >> b |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
327 $ hg add --large b |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
328 $ hg commit -m "b" |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
329 Invoking status precommit hook |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
330 A b |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
331 $ cd .. |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
332 $ hg serve -R batchverifymain -d -p $HGPORT --pid-file hg.pid \ |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
333 > -A access.log |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
334 $ cat hg.pid >> $DAEMON_PIDS |
29218
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
335 $ hg clone --noupdate http://localhost:$HGPORT batchverifyclone |
29068
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
336 requesting all changes |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
337 adding changesets |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
338 adding manifests |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
339 adding file changes |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
340 added 2 changesets with 2 changes to 2 files |
29218
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
341 $ hg -R batchverifyclone verify --large --lfa |
29068
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
342 checking changesets |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
343 checking manifests |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
344 crosschecking files in changesets and manifests |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
345 checking files |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
346 2 files, 2 changesets, 2 total revisions |
29218
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
347 searching 2 changesets for largefiles |
29068
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
348 verified existence of 2 revisions of 2 largefiles |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
349 $ tail -1 access.log |
31008 | 350 $LOCALIP - - [*] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=statlfile+sha%3D972a1a11f19934401291cc99117ec614933374ce%3Bstatlfile+sha%3Dc801c9cfe94400963fcb683246217d5db77f9a9a x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
29218
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
351 $ hg -R batchverifyclone update |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
352 getting changed largefiles |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
353 2 largefiles updated, 0 removed |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
354 2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
355 |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
356 Clear log file before next test |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
357 |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
358 $ printf "" > access.log |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
359 |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
360 Verify should check file on remote server only when file is not |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
361 available locally. |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
362 |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
363 $ echo "ccc" >> batchverifymain/c |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
364 $ hg -R batchverifymain status |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
365 ? c |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
366 $ hg -R batchverifymain add --large batchverifymain/c |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
367 $ hg -R batchverifymain commit -m "c" |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
368 Invoking status precommit hook |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
369 A c |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
370 $ hg -R batchverifyclone pull |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
371 pulling from http://localhost:$HGPORT/ |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
372 searching for changes |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
373 adding changesets |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
374 adding manifests |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
375 adding file changes |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
376 added 1 changesets with 1 changes to 1 files |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
377 (run 'hg update' to get a working copy) |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
378 $ hg -R batchverifyclone verify --lfa |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
379 checking changesets |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
380 checking manifests |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
381 crosschecking files in changesets and manifests |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
382 checking files |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
383 3 files, 3 changesets, 3 total revisions |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
384 searching 3 changesets for largefiles |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
385 verified existence of 3 revisions of 3 largefiles |
fd288d118074
largefiles: send statlfile remote calls only for nonexisting locally files
liscju <piotr.listkiewicz@gmail.com>
parents:
29068
diff
changeset
|
386 $ tail -1 access.log |
31008 | 387 $LOCALIP - - [*] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=statlfile+sha%3Dc8559c3c9cfb42131794b7d8009230403b9b454c x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
29068
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
388 |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
389 $ killdaemons.py |
305f9c36a0f5
largefiles: makes verify batching stat calls to remote
liscju <piotr.listkiewicz@gmail.com>
parents:
28549
diff
changeset
|
390 |
30332
318a24b52eeb
spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents:
29562
diff
changeset
|
391 largefiles should not ask for password again after successful authorization |
29379
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
392 |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
393 $ hg init credentialmain |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
394 $ cd credentialmain |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
395 $ echo "aaa" >> a |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
396 $ hg add --large a |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
397 $ hg commit -m "a" |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
398 Invoking status precommit hook |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
399 A a |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
400 |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
401 Before running server clear the user cache to force clone to download |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
402 a large file from the server rather than to get it from the cache |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
403 |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
404 $ rm "${USERCACHE}"/* |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
405 |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
406 $ cd .. |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
407 $ cat << EOT > userpass.py |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
408 > import base64 |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
409 > from mercurial.hgweb import common |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
410 > def perform_authentication(hgweb, req, op): |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
411 > auth = req.env.get('HTTP_AUTHORIZATION') |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
412 > if not auth: |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
413 > raise common.ErrorResponse(common.HTTP_UNAUTHORIZED, 'who', |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
414 > [('WWW-Authenticate', 'Basic Realm="mercurial"')]) |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
415 > if base64.b64decode(auth.split()[1]).split(':', 1) != ['user', 'pass']: |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
416 > raise common.ErrorResponse(common.HTTP_FORBIDDEN, 'no') |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
417 > def extsetup(): |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
418 > common.permhooks.insert(0, perform_authentication) |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
419 > EOT |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
420 $ hg serve --config extensions.x=userpass.py -R credentialmain \ |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
421 > -d -p $HGPORT --pid-file hg.pid -A access.log |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
422 $ cat hg.pid >> $DAEMON_PIDS |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
423 $ cat << EOF > get_pass.py |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
424 > import getpass |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
425 > def newgetpass(arg): |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
426 > return "pass" |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
427 > getpass.getpass = newgetpass |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
428 > EOF |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
429 $ hg clone --config ui.interactive=true --config extensions.getpass=get_pass.py \ |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
430 > http://user@localhost:$HGPORT credentialclone |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
431 requesting all changes |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
432 http authorization required for http://localhost:$HGPORT/ |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
433 realm: mercurial |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
434 user: user |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
435 password: adding changesets |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
436 adding manifests |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
437 adding file changes |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
438 added 1 changesets with 1 changes to 1 files |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
439 updating to branch default |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
440 getting changed largefiles |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
441 1 largefiles updated, 0 removed |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
442 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
443 |
31770
3ed26ba54685
test-serve: kill daemons before deleting the access and error logs
Matt Harbison <matt_harbison@yahoo.com>
parents:
31008
diff
changeset
|
444 $ killdaemons.py |
29379
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
445 $ rm hg.pid access.log |
fc777c855d66
largefiles: make cloning not ask two times about password (issue4883)
liscju <piotr.listkiewicz@gmail.com>
parents:
29218
diff
changeset
|
446 |
21424
d13b4ecdb680
test: split test-largefile.t in multiple file
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff
changeset
|
447 #endif |