Mercurial > hg
annotate tests/test-http.t @ 34857:84c6b9384d6a
log: add -L/--line-range option to follow file history by line range
We add an experimental -L/--line-range option to 'hg log' taking file patterns
along with a line range using the (new) FILE,FROMLINE-TOLINE syntax where FILE
may be a pattern (matching exactly one file). The resulting history is similar
to what the "followlines" revset except that, if --patch is specified,
only diff hunks within specified line range are shown.
Basically, this brings the CLI on par with what currently only exists in hgweb
through line selection in "file" and "annotate" views resulting in a file log
with filtered patch to only display followed line range.
The option may be specified multiple times and can be combined with --rev and
regular file patterns to further restrict revisions. Usage of this option
requires --follow; revisions are shown in descending order and renames are
followed. Only the --graph option is currently not supported.
The UI is the result of a consensus from review feedback at:
https://www.mercurial-scm.org/pipermail/mercurial-devel/2017-October/106749.html
The implementation spreads between commands.log() and cmdutil module.
In commands.log(), the main loop may now use a "hunksfilter" factory (similar
to "filematcher") that, for a given "rev", produces a filtering function
for diff hunks for a given file context object.
The logic to build revisions from -L/--line-range options lives in
cmdutil.getloglinerangerevs() which produces "revs", "filematcher" and
"hunksfilter" information. Revisions obtained by following files' line range
are filtered if they do not match the revset specified by --rev option. If
regular FILE arguments are passed along with -L options, both filematchers are
combined into a new matcher.
.. feature::
Add an experimental -L/--line-range FILE,FROMLINE-TOLINE option to 'hg log'
command to follow the history of files by line range. In combination with
-p/--patch option, only diff hunks within specified line range will be
displayed. Feedback, especially on UX aspects, is welcome.
author | Denis Laxalde <denis.laxalde@logilab.fr> |
---|---|
date | Tue, 17 Oct 2017 21:15:31 +0200 |
parents | eb586ed5d8ce |
children | 62e10bf001a9 |
rev | line source |
---|---|
31936
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
1 #require killdaemons serve |
2612
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
2 |
12446 | 3 $ hg init test |
4 $ cd test | |
5 $ echo foo>foo | |
6 $ mkdir foo.d foo.d/bAr.hg.d foo.d/baR.d.hg | |
7 $ echo foo>foo.d/foo | |
8 $ echo bar>foo.d/bAr.hg.d/BaR | |
9 $ echo bar>foo.d/baR.d.hg/bAR | |
10 $ hg commit -A -m 1 | |
11 adding foo | |
12 adding foo.d/bAr.hg.d/BaR | |
13 adding foo.d/baR.d.hg/bAR | |
14 adding foo.d/foo | |
13445
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
15 $ hg serve -p $HGPORT -d --pid-file=../hg1.pid -E ../error.log |
28549 | 16 $ hg serve --config server.uncompressed=False -p $HGPORT1 -d --pid-file=../hg2.pid |
12446 | 17 |
18 Test server address cannot be reused | |
4289
e17598881509
test-http: use printenv.py
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
4130
diff
changeset
|
19 |
17023
3e2d8120528b
test-http and test-https: partially adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17018
diff
changeset
|
20 #if windows |
3e2d8120528b
test-http and test-https: partially adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17018
diff
changeset
|
21 $ hg serve -p $HGPORT1 2>&1 |
31768
49e9124cfc23
test-http: update output for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
31747
diff
changeset
|
22 abort: cannot start server at 'localhost:$HGPORT1': * (glob) |
17023
3e2d8120528b
test-http and test-https: partially adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17018
diff
changeset
|
23 [255] |
3e2d8120528b
test-http and test-https: partially adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17018
diff
changeset
|
24 #else |
12446 | 25 $ hg serve -p $HGPORT1 2>&1 |
31009
161ab32b44a1
runtests: set web.address to localhost
Jun Wu <quark@fb.com>
parents:
30914
diff
changeset
|
26 abort: cannot start server at 'localhost:$HGPORT1': Address already in use |
12446 | 27 [255] |
17023
3e2d8120528b
test-http and test-https: partially adapt for Windows
Adrian Buehlmann <adrian@cadifra.com>
parents:
17018
diff
changeset
|
28 #endif |
12446 | 29 $ cd .. |
30 $ cat hg1.pid hg2.pid >> $DAEMON_PIDS | |
31 | |
32 clone via stream | |
9506
49b62395e910
streamclone: partially encode filename over the wire, not for local read (issue1847)
Greg Ward <greg-hg@gerg.ca>
parents:
8167
diff
changeset
|
33 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
34 $ hg clone --stream http://localhost:$HGPORT/ copy 2>&1 |
12446 | 35 streaming all changes |
36 6 files to transfer, 606 bytes of data | |
14023
2cd1520664b8
tests: check for (*/sec) instead of (*B/sec) to match (X bytes/sec)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
13445
diff
changeset
|
37 transferred * bytes in * seconds (*/sec) (glob) |
23116
2dc6b7917cdf
clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents:
22960
diff
changeset
|
38 searching for changes |
2dc6b7917cdf
clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents:
22960
diff
changeset
|
39 no changes found |
12446 | 40 updating to branch default |
41 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
42 $ hg verify -R copy | |
43 checking changesets | |
44 checking manifests | |
45 crosschecking files in changesets and manifests | |
46 checking files | |
47 4 files, 1 changesets, 4 total revisions | |
48 | |
49 try to clone via stream, should use pull instead | |
2612
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
50 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
51 $ hg clone --stream http://localhost:$HGPORT1/ copy2 |
32259
076f1ff43f0f
clone: warn when streaming was requested but couldn't be performed
Siddharth Agarwal <sid0@fb.com>
parents:
32258
diff
changeset
|
52 warning: stream clone requested but server has them disabled |
12446 | 53 requesting all changes |
54 adding changesets | |
55 adding manifests | |
56 adding file changes | |
57 added 1 changesets with 4 changes to 4 files | |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
58 new changesets 8b6053c928fe |
12446 | 59 updating to branch default |
60 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
2612
ffb895f16925
add support for streaming clone.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
61 |
32258
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
62 try to clone via stream but missing requirements, so should use pull instead |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
63 |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
64 $ cat > $TESTTMP/removesupportedformat.py << EOF |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
65 > from mercurial import localrepo |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
66 > def extsetup(ui): |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
67 > localrepo.localrepository.supportedformats.remove('generaldelta') |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
68 > EOF |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
69 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
70 $ hg clone --config extensions.rsf=$TESTTMP/removesupportedformat.py --stream http://localhost:$HGPORT/ copy3 |
32259
076f1ff43f0f
clone: warn when streaming was requested but couldn't be performed
Siddharth Agarwal <sid0@fb.com>
parents:
32258
diff
changeset
|
71 warning: stream clone requested but client is missing requirements: generaldelta |
076f1ff43f0f
clone: warn when streaming was requested but couldn't be performed
Siddharth Agarwal <sid0@fb.com>
parents:
32258
diff
changeset
|
72 (see https://www.mercurial-scm.org/wiki/MissingRequirement for more information) |
32258
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
73 requesting all changes |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
74 adding changesets |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
75 adding manifests |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
76 adding file changes |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
77 added 1 changesets with 4 changes to 4 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
78 new changesets 8b6053c928fe |
32258
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
79 updating to branch default |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
80 4 files updated, 0 files merged, 0 files removed, 0 files unresolved |
9c60d93fd3ab
clone: test streaming disabled because client is missing requirement
Siddharth Agarwal <sid0@fb.com>
parents:
32008
diff
changeset
|
81 |
12446 | 82 clone via pull |
2673
109a22f5434a
hooks: add url to changegroup, incoming, prechangegroup, pretxnchangegroup hooks
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2622
diff
changeset
|
83 |
12446 | 84 $ hg clone http://localhost:$HGPORT1/ copy-pull |
85 requesting all changes | |
86 adding changesets | |
87 adding manifests | |
88 adding file changes | |
89 added 1 changesets with 4 changes to 4 files | |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
90 new changesets 8b6053c928fe |
12446 | 91 updating to branch default |
92 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
93 $ hg verify -R copy-pull | |
94 checking changesets | |
95 checking manifests | |
96 crosschecking files in changesets and manifests | |
97 checking files | |
98 4 files, 1 changesets, 4 total revisions | |
99 $ cd test | |
100 $ echo bar > bar | |
101 $ hg commit -A -d '1 0' -m 2 | |
102 adding bar | |
103 $ cd .. | |
2673
109a22f5434a
hooks: add url to changegroup, incoming, prechangegroup, pretxnchangegroup hooks
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2622
diff
changeset
|
104 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
105 clone over http with --update |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
106 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
107 $ hg clone http://localhost:$HGPORT1/ updated --update 0 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
108 requesting all changes |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
109 adding changesets |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
110 adding manifests |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
111 adding file changes |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
112 added 2 changesets with 5 changes to 5 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
113 new changesets 8b6053c928fe:5fed3813f7f5 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
114 updating to branch default |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
115 4 files updated, 0 files merged, 0 files removed, 0 files unresolved |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
116 $ hg log -r . -R updated |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
117 changeset: 0:8b6053c928fe |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
118 user: test |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
119 date: Thu Jan 01 00:00:00 1970 +0000 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
120 summary: 1 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
121 |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
122 $ rm -rf updated |
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
123 |
14161
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
124 incoming via HTTP |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
125 |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
126 $ hg clone http://localhost:$HGPORT1/ --rev 0 partial |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
127 adding changesets |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
128 adding manifests |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
129 adding file changes |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
130 added 1 changesets with 4 changes to 4 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
131 new changesets 8b6053c928fe |
14161
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
132 updating to branch default |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
133 4 files updated, 0 files merged, 0 files removed, 0 files unresolved |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
134 $ cd partial |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
135 $ touch LOCAL |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
136 $ hg ci -qAm LOCAL |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
137 $ hg incoming http://localhost:$HGPORT1/ --template '{desc}\n' |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
138 comparing with http://localhost:$HGPORT1/ |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
139 searching for changes |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
140 2 |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
141 $ cd .. |
8a0fca925992
bundlerepo: fix and improve getremotechanges
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14023
diff
changeset
|
142 |
12446 | 143 pull |
144 | |
145 $ cd copy-pull | |
30234
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
29564
diff
changeset
|
146 $ cat >> .hg/hgrc <<EOF |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
29564
diff
changeset
|
147 > [hooks] |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
29564
diff
changeset
|
148 > changegroup = sh -c "printenv.py changegroup" |
34a5f6c66bc5
tests: invoke printenv.py via sh -c for test portability
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
29564
diff
changeset
|
149 > EOF |
12446 | 150 $ hg pull |
12643
d08bb64888bc
tests: reintroduce ":$HGPORT" in test output
Mads Kiilerich <mads@kiilerich.com>
parents:
12446
diff
changeset
|
151 pulling from http://localhost:$HGPORT1/ |
12446 | 152 searching for changes |
153 adding changesets | |
154 adding manifests | |
155 adding file changes | |
156 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:
34483
diff
changeset
|
157 new changesets 5fed3813f7f5 |
31747
aff7b32b3c05
hook: add hook name information to external hook
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
31746
diff
changeset
|
158 changegroup hook: HG_HOOKNAME=changegroup HG_HOOKTYPE=changegroup HG_NODE=5fed3813f7f5e1824344fdc9cf8f63bb662c292d HG_NODE_LAST=5fed3813f7f5e1824344fdc9cf8f63bb662c292d HG_SOURCE=pull HG_TXNID=TXN:$ID$ HG_URL=http://localhost:$HGPORT1/ |
12446 | 159 (run 'hg update' to get a working copy) |
160 $ cd .. | |
13445
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
161 |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
162 clone from invalid URL |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
163 |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
164 $ hg clone http://localhost:$HGPORT/bad |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
165 abort: HTTP Error 404: Not Found |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
166 [255] |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
167 |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
168 test http authentication |
16361
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
169 + use the same server to test server side streaming preference |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
170 |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
171 $ cd test |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
172 $ cat << EOT > userpass.py |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
173 > import base64 |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
174 > from mercurial.hgweb import common |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
175 > def perform_authentication(hgweb, req, op): |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
176 > auth = req.env.get('HTTP_AUTHORIZATION') |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
177 > if not auth: |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
178 > raise common.ErrorResponse(common.HTTP_UNAUTHORIZED, 'who', |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
179 > [('WWW-Authenticate', 'Basic Realm="mercurial"')]) |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
180 > if base64.b64decode(auth.split()[1]).split(':', 1) != ['user', 'pass']: |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
181 > raise common.ErrorResponse(common.HTTP_FORBIDDEN, 'no') |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
182 > def extsetup(): |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
183 > common.permhooks.insert(0, perform_authentication) |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
184 > EOT |
28549 | 185 $ hg serve --config extensions.x=userpass.py -p $HGPORT2 -d --pid-file=pid \ |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
186 > --config server.preferuncompressed=True \ |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
187 > --config web.push_ssl=False --config web.allow_push=* -A ../access.log |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
188 $ cat pid >> $DAEMON_PIDS |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
189 |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
190 $ cat << EOF > get_pass.py |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
191 > import getpass |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
192 > def newgetpass(arg): |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
193 > return "pass" |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
194 > getpass.getpass = newgetpass |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
195 > EOF |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
196 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
197 $ hg id http://localhost:$HGPORT2/ |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
198 abort: http authorization required for http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
199 [255] |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
200 $ hg id http://localhost:$HGPORT2/ |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
201 abort: http authorization required for http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
202 [255] |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
203 $ hg id --config ui.interactive=true --config extensions.getpass=get_pass.py http://user@localhost:$HGPORT2/ |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
204 http authorization required for http://localhost:$HGPORT2/ |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
205 realm: mercurial |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
206 user: user |
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
207 password: 5fed3813f7f5 |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
208 $ hg id http://user:pass@localhost:$HGPORT2/ |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
209 5fed3813f7f5 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
210 $ echo '[auth]' >> .hg/hgrc |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
211 $ echo 'l.schemes=http' >> .hg/hgrc |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
212 $ echo 'l.prefix=lo' >> .hg/hgrc |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
213 $ echo 'l.username=user' >> .hg/hgrc |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
214 $ echo 'l.password=pass' >> .hg/hgrc |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
215 $ hg id http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
216 5fed3813f7f5 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
217 $ hg id http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
218 5fed3813f7f5 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
219 $ hg id http://user@localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
220 5fed3813f7f5 |
16361
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
221 $ hg clone http://user:pass@localhost:$HGPORT2/ dest 2>&1 |
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
222 streaming all changes |
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
223 7 files to transfer, 916 bytes of data |
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
224 transferred * bytes in * seconds (*/sec) (glob) |
23116
2dc6b7917cdf
clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents:
22960
diff
changeset
|
225 searching for changes |
2dc6b7917cdf
clone: fix copying bookmarks in uncompressed clones (issue4430)
Durham Goode <durham@fb.com>
parents:
22960
diff
changeset
|
226 no changes found |
16361
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
227 updating to branch default |
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
228 5 files updated, 0 files merged, 0 files removed, 0 files unresolved |
23546
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
229 --pull should override server's preferuncompressed |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
230 $ hg clone --pull http://user:pass@localhost:$HGPORT2/ dest-pull 2>&1 |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
231 requesting all changes |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
232 adding changesets |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
233 adding manifests |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
234 adding file changes |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
235 added 2 changesets with 5 changes to 5 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
236 new changesets 8b6053c928fe:5fed3813f7f5 |
23546
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
237 updating to branch default |
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
238 5 files updated, 0 files merged, 0 files removed, 0 files unresolved |
16361
6097ede2be4d
protocol: Add the stream-preferred capability
Benoit Allard <benoit@aeteurope.nl>
parents:
15446
diff
changeset
|
239 |
17342
471f30d360ea
clone: don't fail with --update for non-local clones (issue3578)
Augie Fackler <raf@durin42.com>
parents:
17260
diff
changeset
|
240 $ hg id http://user2@localhost:$HGPORT2/ |
20291
7d589d923b8a
url: added authuri when login information is requested (issue3209)
Lucas Moscovicz <lmoscovicz@fb.com>
parents:
17342
diff
changeset
|
241 abort: http authorization required for http://localhost:$HGPORT2/ |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
242 [255] |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
243 $ hg id http://user:pass2@localhost:$HGPORT2/ |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
244 abort: HTTP Error 403: no |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
245 [255] |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
246 |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
247 $ hg -R dest tag -r tip top |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
248 $ hg -R dest push http://user:pass@localhost:$HGPORT2/ |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
249 pushing to http://user:***@localhost:$HGPORT2/ |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
250 searching for changes |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
251 remote: adding changesets |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
252 remote: adding manifests |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
253 remote: adding file changes |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
254 remote: added 1 changesets with 1 changes to 1 files |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
255 $ hg rollback -q |
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
256 |
29564
db565a506729
test-http: use sed instead of fixed-with cut for reading access.log
Augie Fackler <augie@google.com>
parents:
29064
diff
changeset
|
257 $ sed 's/.*] "/"/' < ../access.log |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
258 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
259 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
260 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
261 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
262 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
263 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
264 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
265 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
266 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
267 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
268 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
269 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
270 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
271 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
272 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
273 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
274 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
275 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
276 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
277 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
278 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
279 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
280 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
281 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
282 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
283 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
284 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
285 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
286 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
287 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
288 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
289 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
290 "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
291 "GET /?cmd=stream_out HTTP/1.1" 401 - x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
292 "GET /?cmd=stream_out HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
293 "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D5fed3813f7f5e1824344fdc9cf8f63bb662c292d x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
34322
10e162bb9bf5
pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents:
32260
diff
changeset
|
294 "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=0&common=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
295 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
296 "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
34322
10e162bb9bf5
pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents:
32260
diff
changeset
|
297 "GET /?cmd=getbundle HTTP/1.1" 401 - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
10e162bb9bf5
pull: use 'phase-heads' to retrieve phase information
Boris Feld <boris.feld@octobus.net>
parents:
32260
diff
changeset
|
298 "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Aphases%253Dheads%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=bookmarks&phases=1 x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
23546
deabbe7ed54b
localrepo.clone: add a way to override server preferuncompressed
Siddharth Agarwal <sid0@fb.com>
parents:
23116
diff
changeset
|
299 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
300 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
301 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
302 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
303 "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
304 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
305 "GET /?cmd=listkeys HTTP/1.1" 403 - x-hgarg-1:namespace=namespaces x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
306 "GET /?cmd=capabilities HTTP/1.1" 200 - |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
307 "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D7f4e523d01f2cc3765ac8934da3d14db775ff872 x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
308 "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
309 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
310 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
311 "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
312 "GET /?cmd=branchmap HTTP/1.1" 200 - x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
313 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=bookmarks x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
28996 | 314 "POST /?cmd=unbundle HTTP/1.1" 200 - x-hgarg-1:heads=666f726365* (glob) |
30763
a520aefb96f1
httppeer: advertise and support application/mercurial-0.2
Gregory Szorc <gregory.szorc@gmail.com>
parents:
30234
diff
changeset
|
315 "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases x-hgproto-1:0.1 0.2 comp=*zlib,none,bzip2 (glob) |
20385
54235a6ff98a
tests: improved test coverage for HTTP authentication and 401 responses
Mads Kiilerich <madski@unity3d.com>
parents:
20384
diff
changeset
|
316 |
15026
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
317 $ cd .. |
f32a2989ff58
test-http: test http authentication
Mads Kiilerich <mads@kiilerich.com>
parents:
14161
diff
changeset
|
318 |
15055
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
319 clone of serve with repo in root and unserved subrepo (issue2970) |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
320 |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
321 $ hg --cwd test init sub |
17260
e432fb4b4221
tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents:
17023
diff
changeset
|
322 $ echo empty > test/sub/empty |
e432fb4b4221
tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents:
17023
diff
changeset
|
323 $ hg --cwd test/sub add empty |
e432fb4b4221
tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents:
17023
diff
changeset
|
324 $ hg --cwd test/sub commit -qm 'add empty' |
e432fb4b4221
tag: don't allow tagging the null revision (issue1915)
Brad Hall <bhall@fb.com>
parents:
17023
diff
changeset
|
325 $ hg --cwd test/sub tag -r 0 something |
15055
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
326 $ echo sub = sub > test/.hgsub |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
327 $ hg --cwd test add .hgsub |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
328 $ hg --cwd test commit -qm 'add subrepo' |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
329 $ hg clone http://localhost:$HGPORT noslash-clone |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
330 requesting all changes |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
331 adding changesets |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
332 adding manifests |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
333 adding file changes |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
334 added 3 changesets with 7 changes to 7 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
335 new changesets 8b6053c928fe:56f9bc90cce6 |
15055
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
336 updating to branch default |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
337 abort: HTTP Error 404: Not Found |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
338 [255] |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
339 $ hg clone http://localhost:$HGPORT/ slash-clone |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
340 requesting all changes |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
341 adding changesets |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
342 adding manifests |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
343 adding file changes |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
344 added 3 changesets with 7 changes to 7 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
345 new changesets 8b6053c928fe:56f9bc90cce6 |
15055
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
346 updating to branch default |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
347 abort: HTTP Error 404: Not Found |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
348 [255] |
d629f1e89021
subrepo: fix cloning of repos from urls without slash after host (issue2970)
Mads Kiilerich <mads@kiilerich.com>
parents:
15026
diff
changeset
|
349 |
13445
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
350 check error log |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
351 |
61a898576888
hgweb: handle invalid requests with both form data and querystring
Mads Kiilerich <mads@kiilerich.com>
parents:
13439
diff
changeset
|
352 $ cat error.log |
30914
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
353 |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
354 check abort error reporting while pulling/cloning |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
355 |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
356 $ $RUNTESTDIR/killdaemons.py |
34483
a6d95a8b7243
serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
34393
diff
changeset
|
357 $ hg serve -R test -p $HGPORT -d --pid-file=hg3.pid -E error.log --config extensions.crash=${TESTDIR}/crashgetbundler.py |
30914
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
358 $ cat hg3.pid >> $DAEMON_PIDS |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
359 $ hg clone http://localhost:$HGPORT/ abort-clone |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
360 requesting all changes |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
361 remote: abort: this is an exercise |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
362 abort: pull failed on remote |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
363 [255] |
f3807a135e43
wireproto: properly report server Abort during 'getbundle'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
30763
diff
changeset
|
364 $ cat error.log |
31936
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
365 |
32260
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
366 disable pull-based clones |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
367 |
34483
a6d95a8b7243
serve: make tests compatible with chg
Saurabh Singh <singhsrb@fb.com>
parents:
34393
diff
changeset
|
368 $ hg serve -R test -p $HGPORT1 -d --pid-file=hg4.pid -E error.log --config server.disablefullbundle=True |
32260
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
369 $ cat hg4.pid >> $DAEMON_PIDS |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
370 $ hg clone http://localhost:$HGPORT1/ disable-pull-clone |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
371 requesting all changes |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
372 remote: abort: server has pull-based clones disabled |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
373 abort: pull failed on remote |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
374 (remove --pull if specified or upgrade Mercurial) |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
375 [255] |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
376 |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
377 ... but keep stream clones working |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
378 |
34393
fffd3369aa83
commands: rename clone --uncompressed to --stream and document
Gregory Szorc <gregory.szorc@gmail.com>
parents:
34322
diff
changeset
|
379 $ hg clone --stream --noupdate http://localhost:$HGPORT1/ test-stream-clone |
32260
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
380 streaming all changes |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
381 * files to transfer, * of data (glob) |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
382 transferred * in * seconds (*/sec) (glob) |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
383 searching for changes |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
384 no changes found |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
385 $ cat error.log |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
386 |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
387 ... and also keep partial clones and pulls working |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
388 $ hg clone http://localhost:$HGPORT1 --rev 0 test-partial-clone |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
389 adding changesets |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
390 adding manifests |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
391 adding file changes |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
392 added 1 changesets with 4 changes to 4 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
393 new changesets 8b6053c928fe |
32260
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
394 updating to branch default |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
395 4 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
396 $ hg pull -R test-partial-clone |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
397 pulling from http://localhost:$HGPORT1/ |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
398 searching for changes |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
399 adding changesets |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
400 adding manifests |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
401 adding file changes |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
402 added 2 changesets with 3 changes to 3 files |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34483
diff
changeset
|
403 new changesets 5fed3813f7f5:56f9bc90cce6 |
32260
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
404 (run 'hg update' to get a working copy) |
d0d9a4fca59b
clone: add a server-side option to disable full getbundles (pull-based clones)
Siddharth Agarwal <sid0@fb.com>
parents:
32259
diff
changeset
|
405 |
31936
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
406 corrupt cookies file should yield a warning |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
407 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
408 $ cat > $TESTTMP/cookies.txt << EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
409 > bad format |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
410 > EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
411 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
412 $ hg --config auth.cookiefile=$TESTTMP/cookies.txt id http://localhost:$HGPORT/ |
32008
9a782e7e651e
test-http: add a (glob) for Windows
Matt Harbison <matt_harbison@yahoo.com>
parents:
31936
diff
changeset
|
413 (error loading cookie file $TESTTMP/cookies.txt: '*/cookies.txt' does not look like a Netscape format cookies file; continuing without cookies) (glob) |
31936
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
414 56f9bc90cce6 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
415 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
416 $ killdaemons.py |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
417 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
418 Create dummy authentication handler that looks for cookies. It doesn't do anything |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
419 useful. It just raises an HTTP 500 with details about the Cookie request header. |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
420 We raise HTTP 500 because its message is printed in the abort message. |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
421 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
422 $ cat > cookieauth.py << EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
423 > from mercurial import util |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
424 > from mercurial.hgweb import common |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
425 > def perform_authentication(hgweb, req, op): |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
426 > cookie = req.env.get('HTTP_COOKIE') |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
427 > if not cookie: |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
428 > raise common.ErrorResponse(common.HTTP_SERVER_ERROR, 'no-cookie') |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
429 > raise common.ErrorResponse(common.HTTP_SERVER_ERROR, 'Cookie: %s' % cookie) |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
430 > def extsetup(): |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
431 > common.permhooks.insert(0, perform_authentication) |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
432 > EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
433 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
434 $ hg serve --config extensions.cookieauth=cookieauth.py -R test -p $HGPORT -d --pid-file=pid |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
435 $ cat pid > $DAEMON_PIDS |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
436 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
437 Request without cookie sent should fail due to lack of cookie |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
438 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
439 $ hg id http://localhost:$HGPORT |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
440 abort: HTTP Error 500: no-cookie |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
441 [255] |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
442 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
443 Populate a cookies file |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
444 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
445 $ cat > cookies.txt << EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
446 > # HTTP Cookie File |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
447 > # Expiration is 2030-01-01 at midnight |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
448 > .example.com TRUE / FALSE 1893456000 hgkey examplevalue |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
449 > EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
450 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
451 Should not send a cookie for another domain |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
452 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
453 $ hg --config auth.cookiefile=cookies.txt id http://localhost:$HGPORT/ |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
454 abort: HTTP Error 500: no-cookie |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
455 [255] |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
456 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
457 Add a cookie entry for our test server and verify it is sent |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
458 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
459 $ cat >> cookies.txt << EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
460 > localhost.local FALSE / FALSE 1893456000 hgkey localhostvalue |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
461 > EOF |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
462 |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
463 $ hg --config auth.cookiefile=cookies.txt id http://localhost:$HGPORT/ |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
464 abort: HTTP Error 500: Cookie: hgkey=localhostvalue |
806f9a883b4f
url: support auth.cookiesfile for adding cookies to HTTP requests
Gregory Szorc <gregory.szorc@gmail.com>
parents:
31768
diff
changeset
|
465 [255] |