Mercurial > hg
annotate tests/test-hgweb.t @ 26631:e077ce385609
localrepo: restore dirstate to one before rollbacking if not parent-gone
'localrepository.rollback()' explicilty restores dirstate, only if at
least one of current parents of the working directory is removed at
rollbacking (a.k.a "parent-gone").
After DirstateTransactionPlan, 'dirstate.write()' will cause marking
'.hg/dirstate' as a file to be restored at rollbacking.
https://mercurial.selenic.com/wiki/DirstateTransactionPlan
Then, 'transaction.rollback()' restores '.hg/dirstate' regardless of
parents of the working directory at that time, and this causes
unexpected dirstate changes if not "parent-gone" (e.g. "hg update" to
another branch after "hg commit" or so, then "hg rollback").
To avoid such situation, this patch restores dirstate to one before
rollbacking if not "parent-gone".
before:
b1. restore dirstate explicitly, if "parent-gone"
after:
a1. save dirstate before actual rollbacking via dirstateguard
a2. restore dirstate via 'transaction.rollback()'
a3. if "parent-gone"
- discard backup (a1)
- restore dirstate from 'undo.dirstate'
a4. otherwise, restore dirstate from backup (a1)
Even though restoring dirstate at (a3) after (a2) seems redundant,
this patch keeps this existing code path, because:
- it isn't ensured that 'dirstate.write()' was invoked at least once
while transaction running
If not, '.hg/dirstate' isn't restored at (a2).
In addition to it, rude 3rd party extension invoking
'dirstate.write()' without 'repo' while transaction running (see
subsequent patches for detail) may break consistency of a file
backup-ed by transaction.
- this patch mainly focuses on changes for DirstateTransactionPlan
Restoring dirstate at (a3) itself should be cheaper enough than
rollbacking itself. Redundancy will be removed in next step.
Newly added test is almost meaningless at this point. It will be used
to detect regression while implementing delayed dirstate write out.
author | FUJIWARA Katsunori <foozy@lares.dti.ne.jp> |
---|---|
date | Tue, 13 Oct 2015 12:25:43 -0700 |
parents | 93a3687a94d7 |
children | ab2cd800f1b0 |
rev | line source |
---|---|
22046
7a9cbb315d84
tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents:
20256
diff
changeset
|
1 #require serve |
15446
c5c9ca3719f9
tests: use 'hghave serve' to guard tests that requires serve daemon management
Mads Kiilerich <mads@kiilerich.com>
parents:
14046
diff
changeset
|
2 |
12432 | 3 Some tests for hgweb. Tests static files, plain files and different 404's. |
4 | |
5 $ hg init test | |
6 $ cd test | |
7 $ mkdir da | |
8 $ echo foo > da/foo | |
9 $ echo foo > foo | |
10 $ hg ci -Ambase | |
11 adding da/foo | |
12 adding foo | |
25777
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
13 $ hg bookmark -r0 '@' |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
14 $ hg bookmark -r0 'a b c' |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
15 $ hg bookmark -r0 'd/e/f' |
12432 | 16 $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log |
17 $ cat hg.pid >> $DAEMON_PIDS | |
18 | |
19 manifest | |
3942 | 20 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
21 $ (get-with-headers.py localhost:$HGPORT 'file/tip/?style=raw') |
12432 | 22 200 Script output follows |
23 | |
24 | |
25 drwxr-xr-x da | |
26 -rw-r--r-- 4 foo | |
27 | |
28 | |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
29 $ (get-with-headers.py localhost:$HGPORT 'file/tip/da?style=raw') |
12432 | 30 200 Script output follows |
31 | |
32 | |
33 -rw-r--r-- 4 foo | |
34 | |
35 | |
36 | |
37 plain file | |
38 | |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
39 $ get-with-headers.py localhost:$HGPORT 'file/tip/foo?style=raw' |
12432 | 40 200 Script output follows |
41 | |
42 foo | |
43 | |
44 should give a 404 - static file that does not exist | |
9842
d3dbdca92458
hgweb: don't choke when an inexistent style is requested (issue1901)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
8167
diff
changeset
|
45 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
46 $ get-with-headers.py localhost:$HGPORT 'static/bogus' |
12432 | 47 404 Not Found |
48 | |
49 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> | |
50 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> | |
51 <head> | |
52 <link rel="icon" href="/static/hgicon.png" type="image/png" /> | |
53 <meta name="robots" content="index, nofollow" /> | |
54 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> | |
14046
b24e5a708fad
web: Made elapsed time calculation dynamic (javascript).
Benoit Allard <benoit@aeteurope.nl>
parents:
13863
diff
changeset
|
55 <script type="text/javascript" src="/static/mercurial.js"></script> |
12432 | 56 |
57 <title>test: error</title> | |
58 </head> | |
59 <body> | |
60 | |
61 <div class="container"> | |
62 <div class="menu"> | |
63 <div class="logo"> | |
26421
4b0fc75f9403
urls: bulk-change primary website URLs
Matt Mackall <mpm@selenic.com>
parents:
26363
diff
changeset
|
64 <a href="https://mercurial-scm.org/"> |
12432 | 65 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a> |
66 </div> | |
67 <ul> | |
68 <li><a href="/shortlog">log</a></li> | |
69 <li><a href="/graph">graph</a></li> | |
70 <li><a href="/tags">tags</a></li> | |
13597
38c9837b1f75
hgweb: add separate page with bookmarks listing
Alexander Solovyov <alexander@solovyov.net>
parents:
12846
diff
changeset
|
71 <li><a href="/bookmarks">bookmarks</a></li> |
12432 | 72 <li><a href="/branches">branches</a></li> |
17290
7a9246abf9fe
hgweb: make paper:error consistent with template
Ross Lagerwall <rosslagerwall@gmail.com>
parents:
17243
diff
changeset
|
73 </ul> |
7a9246abf9fe
hgweb: make paper:error consistent with template
Ross Lagerwall <rosslagerwall@gmail.com>
parents:
17243
diff
changeset
|
74 <ul> |
12680
d664547ef540
hgweb: add help link to templates missed in ead4e21f49f1
Augie Fackler <durin42@gmail.com>
parents:
12666
diff
changeset
|
75 <li><a href="/help">help</a></li> |
12432 | 76 </ul> |
77 </div> | |
78 | |
79 <div class="main"> | |
80 | |
18264
d6ebdbdd70a5
tests: update hgweb tests to include breadcrumbs
Bryan O'Sullivan <bryano@fb.com>
parents:
17466
diff
changeset
|
81 <h2 class="breadcrumb"><a href="/">Mercurial</a> </h2> |
12432 | 82 <h3>error</h3> |
83 | |
84 <form class="search" action="/log"> | |
85 | |
86 <p><input name="rev" id="search1" type="text" size="30"></p> | |
19796
544848ef65f2
paper: edit search hint to include new feature description
Alexander Plavin <alexander@plav.in>
parents:
19795
diff
changeset
|
87 <div id="hint">Find changesets by keywords (author, files, the commit message), revision |
544848ef65f2
paper: edit search hint to include new feature description
Alexander Plavin <alexander@plav.in>
parents:
19795
diff
changeset
|
88 number or hash, or <a href="/help/revsets">revset expression</a>.</div> |
12432 | 89 </form> |
90 | |
91 <div class="description"> | |
92 <p> | |
93 An error occurred while processing your request: | |
94 </p> | |
95 <p> | |
96 Not Found | |
97 </p> | |
98 </div> | |
99 </div> | |
100 </div> | |
101 | |
14046
b24e5a708fad
web: Made elapsed time calculation dynamic (javascript).
Benoit Allard <benoit@aeteurope.nl>
parents:
13863
diff
changeset
|
102 <script type="text/javascript">process_dates()</script> |
12432 | 103 |
104 | |
105 </body> | |
106 </html> | |
107 | |
108 [1] | |
109 | |
110 should give a 404 - bad revision | |
111 | |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
112 $ get-with-headers.py localhost:$HGPORT 'file/spam/foo?style=raw' |
12432 | 113 404 Not Found |
114 | |
115 | |
116 error: revision not found: spam | |
117 [1] | |
118 | |
119 should give a 400 - bad command | |
9842
d3dbdca92458
hgweb: don't choke when an inexistent style is requested (issue1901)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
8167
diff
changeset
|
120 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
121 $ get-with-headers.py localhost:$HGPORT 'file/tip/foo?cmd=spam&style=raw' |
12432 | 122 400* (glob) |
123 | |
124 | |
125 error: no such method: spam | |
126 [1] | |
127 | |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
128 $ get-with-headers.py --headeronly localhost:$HGPORT '?cmd=spam' |
22506
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
129 400 no such method: spam |
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
130 [1] |
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
131 |
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
132 should give a 400 - bad command as a part of url path (issue4071) |
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
133 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
134 $ get-with-headers.py --headeronly localhost:$HGPORT 'spam' |
22506
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
135 400 no such method: spam |
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
136 [1] |
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
137 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
138 $ get-with-headers.py --headeronly localhost:$HGPORT 'raw-spam' |
22506
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
139 400 no such method: spam |
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
140 [1] |
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
141 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
142 $ get-with-headers.py --headeronly localhost:$HGPORT 'spam/tip/foo' |
22506
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
143 400 no such method: spam |
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
144 [1] |
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
145 |
12432 | 146 should give a 404 - file does not exist |
5561
22713dce19f6
hgweb: return meaningful HTTP status codes instead of nonsense
Bryan O'Sullivan <bos@serpentine.com>
parents:
5384
diff
changeset
|
147 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
148 $ get-with-headers.py localhost:$HGPORT 'file/tip/bork?style=raw' |
12432 | 149 404 Not Found |
150 | |
151 | |
152 error: bork@2ef0ac749a14: not found in manifest | |
153 [1] | |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
154 $ get-with-headers.py localhost:$HGPORT 'file/tip/bork' |
12432 | 155 404 Not Found |
156 | |
157 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> | |
158 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> | |
159 <head> | |
160 <link rel="icon" href="/static/hgicon.png" type="image/png" /> | |
161 <meta name="robots" content="index, nofollow" /> | |
162 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> | |
14046
b24e5a708fad
web: Made elapsed time calculation dynamic (javascript).
Benoit Allard <benoit@aeteurope.nl>
parents:
13863
diff
changeset
|
163 <script type="text/javascript" src="/static/mercurial.js"></script> |
12432 | 164 |
165 <title>test: error</title> | |
166 </head> | |
167 <body> | |
168 | |
169 <div class="container"> | |
170 <div class="menu"> | |
171 <div class="logo"> | |
26421
4b0fc75f9403
urls: bulk-change primary website URLs
Matt Mackall <mpm@selenic.com>
parents:
26363
diff
changeset
|
172 <a href="https://mercurial-scm.org/"> |
12432 | 173 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a> |
174 </div> | |
175 <ul> | |
176 <li><a href="/shortlog">log</a></li> | |
177 <li><a href="/graph">graph</a></li> | |
178 <li><a href="/tags">tags</a></li> | |
13597
38c9837b1f75
hgweb: add separate page with bookmarks listing
Alexander Solovyov <alexander@solovyov.net>
parents:
12846
diff
changeset
|
179 <li><a href="/bookmarks">bookmarks</a></li> |
12432 | 180 <li><a href="/branches">branches</a></li> |
17290
7a9246abf9fe
hgweb: make paper:error consistent with template
Ross Lagerwall <rosslagerwall@gmail.com>
parents:
17243
diff
changeset
|
181 </ul> |
7a9246abf9fe
hgweb: make paper:error consistent with template
Ross Lagerwall <rosslagerwall@gmail.com>
parents:
17243
diff
changeset
|
182 <ul> |
12680
d664547ef540
hgweb: add help link to templates missed in ead4e21f49f1
Augie Fackler <durin42@gmail.com>
parents:
12666
diff
changeset
|
183 <li><a href="/help">help</a></li> |
12432 | 184 </ul> |
185 </div> | |
186 | |
187 <div class="main"> | |
188 | |
18264
d6ebdbdd70a5
tests: update hgweb tests to include breadcrumbs
Bryan O'Sullivan <bryano@fb.com>
parents:
17466
diff
changeset
|
189 <h2 class="breadcrumb"><a href="/">Mercurial</a> </h2> |
12432 | 190 <h3>error</h3> |
191 | |
192 <form class="search" action="/log"> | |
193 | |
194 <p><input name="rev" id="search1" type="text" size="30"></p> | |
19796
544848ef65f2
paper: edit search hint to include new feature description
Alexander Plavin <alexander@plav.in>
parents:
19795
diff
changeset
|
195 <div id="hint">Find changesets by keywords (author, files, the commit message), revision |
544848ef65f2
paper: edit search hint to include new feature description
Alexander Plavin <alexander@plav.in>
parents:
19795
diff
changeset
|
196 number or hash, or <a href="/help/revsets">revset expression</a>.</div> |
12432 | 197 </form> |
198 | |
199 <div class="description"> | |
200 <p> | |
201 An error occurred while processing your request: | |
202 </p> | |
203 <p> | |
204 bork@2ef0ac749a14: not found in manifest | |
205 </p> | |
206 </div> | |
207 </div> | |
208 </div> | |
209 | |
14046
b24e5a708fad
web: Made elapsed time calculation dynamic (javascript).
Benoit Allard <benoit@aeteurope.nl>
parents:
13863
diff
changeset
|
210 <script type="text/javascript">process_dates()</script> |
12432 | 211 |
212 | |
213 </body> | |
214 </html> | |
215 | |
216 [1] | |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
217 $ get-with-headers.py localhost:$HGPORT 'diff/tip/bork?style=raw' |
12432 | 218 404 Not Found |
219 | |
220 | |
221 error: bork@2ef0ac749a14: not found in manifest | |
222 [1] | |
5561
22713dce19f6
hgweb: return meaningful HTTP status codes instead of nonsense
Bryan O'Sullivan <bos@serpentine.com>
parents:
5384
diff
changeset
|
223 |
12432 | 224 try bad style |
5561
22713dce19f6
hgweb: return meaningful HTTP status codes instead of nonsense
Bryan O'Sullivan <bos@serpentine.com>
parents:
5384
diff
changeset
|
225 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
226 $ (get-with-headers.py localhost:$HGPORT 'file/tip/?style=foobar') |
12432 | 227 200 Script output follows |
228 | |
229 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> | |
230 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US"> | |
231 <head> | |
232 <link rel="icon" href="/static/hgicon.png" type="image/png" /> | |
233 <meta name="robots" content="index, nofollow" /> | |
234 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" /> | |
14046
b24e5a708fad
web: Made elapsed time calculation dynamic (javascript).
Benoit Allard <benoit@aeteurope.nl>
parents:
13863
diff
changeset
|
235 <script type="text/javascript" src="/static/mercurial.js"></script> |
12432 | 236 |
237 <title>test: 2ef0ac749a14 /</title> | |
238 </head> | |
239 <body> | |
240 | |
241 <div class="container"> | |
242 <div class="menu"> | |
243 <div class="logo"> | |
26421
4b0fc75f9403
urls: bulk-change primary website URLs
Matt Mackall <mpm@selenic.com>
parents:
26363
diff
changeset
|
244 <a href="https://mercurial-scm.org/"> |
12432 | 245 <img src="/static/hglogo.png" alt="mercurial" /></a> |
246 </div> | |
247 <ul> | |
25606
3bb6f5f478a7
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)
Anton Shestakov <av6@dwimlabs.net>
parents:
25474
diff
changeset
|
248 <li><a href="/shortlog/tip">log</a></li> |
3bb6f5f478a7
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)
Anton Shestakov <av6@dwimlabs.net>
parents:
25474
diff
changeset
|
249 <li><a href="/graph/tip">graph</a></li> |
12432 | 250 <li><a href="/tags">tags</a></li> |
13597
38c9837b1f75
hgweb: add separate page with bookmarks listing
Alexander Solovyov <alexander@solovyov.net>
parents:
12846
diff
changeset
|
251 <li><a href="/bookmarks">bookmarks</a></li> |
12432 | 252 <li><a href="/branches">branches</a></li> |
253 </ul> | |
254 <ul> | |
25606
3bb6f5f478a7
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)
Anton Shestakov <av6@dwimlabs.net>
parents:
25474
diff
changeset
|
255 <li><a href="/rev/tip">changeset</a></li> |
12432 | 256 <li class="active">browse</li> |
257 </ul> | |
258 <ul> | |
259 | |
260 </ul> | |
12666
ead4e21f49f1
web: add a help view for getting hg help output
Augie Fackler <durin42@gmail.com>
parents:
12432
diff
changeset
|
261 <ul> |
ead4e21f49f1
web: add a help view for getting hg help output
Augie Fackler <durin42@gmail.com>
parents:
12432
diff
changeset
|
262 <li><a href="/help">help</a></li> |
ead4e21f49f1
web: add a help view for getting hg help output
Augie Fackler <durin42@gmail.com>
parents:
12432
diff
changeset
|
263 </ul> |
12432 | 264 </div> |
265 | |
266 <div class="main"> | |
18264
d6ebdbdd70a5
tests: update hgweb tests to include breadcrumbs
Bryan O'Sullivan <bryano@fb.com>
parents:
17466
diff
changeset
|
267 <h2 class="breadcrumb"><a href="/">Mercurial</a> </h2> |
25617
63be46407a50
hgweb: link to revision by node hash in paper & coal
Anton Shestakov <av6@dwimlabs.net>
parents:
25606
diff
changeset
|
268 <h3> |
63be46407a50
hgweb: link to revision by node hash in paper & coal
Anton Shestakov <av6@dwimlabs.net>
parents:
25606
diff
changeset
|
269 directory / @ 0:<a href="/rev/2ef0ac749a14">2ef0ac749a14</a> |
25777
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
270 <span class="tag">tip</span> <span class="tag">@</span> <span class="tag">a b c</span> <span class="tag">d/e/f</span> |
25617
63be46407a50
hgweb: link to revision by node hash in paper & coal
Anton Shestakov <av6@dwimlabs.net>
parents:
25606
diff
changeset
|
271 </h3> |
12432 | 272 |
273 <form class="search" action="/log"> | |
274 | |
275 <p><input name="rev" id="search1" type="text" size="30" /></p> | |
19796
544848ef65f2
paper: edit search hint to include new feature description
Alexander Plavin <alexander@plav.in>
parents:
19795
diff
changeset
|
276 <div id="hint">Find changesets by keywords (author, files, the commit message), revision |
544848ef65f2
paper: edit search hint to include new feature description
Alexander Plavin <alexander@plav.in>
parents:
19795
diff
changeset
|
277 number or hash, or <a href="/help/revsets">revset expression</a>.</div> |
12432 | 278 </form> |
279 | |
280 <table class="bigtable"> | |
24054
fdf7794be41d
hgweb: replace implicit <tbody> with explicit <thead> where appropriate
Anton Shestakov <engored@ya.ru>
parents:
23952
diff
changeset
|
281 <thead> |
12432 | 282 <tr> |
283 <th class="name">name</th> | |
284 <th class="size">size</th> | |
285 <th class="permissions">permissions</th> | |
286 </tr> | |
24054
fdf7794be41d
hgweb: replace implicit <tbody> with explicit <thead> where appropriate
Anton Shestakov <engored@ya.ru>
parents:
23952
diff
changeset
|
287 </thead> |
19447
182942b38d24
hgweb: make stripes in directory view with CSS
Alexander Plavin <me@aplavin.ru>
parents:
19076
diff
changeset
|
288 <tbody class="stripes2"> |
182942b38d24
hgweb: make stripes in directory view with CSS
Alexander Plavin <me@aplavin.ru>
parents:
19076
diff
changeset
|
289 <tr class="fileline"> |
25606
3bb6f5f478a7
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)
Anton Shestakov <av6@dwimlabs.net>
parents:
25474
diff
changeset
|
290 <td class="name"><a href="/file/tip/">[up]</a></td> |
12432 | 291 <td class="size"></td> |
292 <td class="permissions">drwxr-xr-x</td> | |
293 </tr> | |
294 | |
19447
182942b38d24
hgweb: make stripes in directory view with CSS
Alexander Plavin <me@aplavin.ru>
parents:
19076
diff
changeset
|
295 <tr class="fileline"> |
12432 | 296 <td class="name"> |
25606
3bb6f5f478a7
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)
Anton Shestakov <av6@dwimlabs.net>
parents:
25474
diff
changeset
|
297 <a href="/file/tip/da"> |
12432 | 298 <img src="/static/coal-folder.png" alt="dir."/> da/ |
299 </a> | |
25606
3bb6f5f478a7
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)
Anton Shestakov <av6@dwimlabs.net>
parents:
25474
diff
changeset
|
300 <a href="/file/tip/da/"> |
12432 | 301 |
302 </a> | |
303 </td> | |
304 <td class="size"></td> | |
305 <td class="permissions">drwxr-xr-x</td> | |
306 </tr> | |
307 | |
19447
182942b38d24
hgweb: make stripes in directory view with CSS
Alexander Plavin <me@aplavin.ru>
parents:
19076
diff
changeset
|
308 <tr class="fileline"> |
12432 | 309 <td class="filename"> |
25606
3bb6f5f478a7
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)
Anton Shestakov <av6@dwimlabs.net>
parents:
25474
diff
changeset
|
310 <a href="/file/tip/foo"> |
12432 | 311 <img src="/static/coal-file.png" alt="file"/> foo |
312 </a> | |
313 </td> | |
314 <td class="size">4</td> | |
315 <td class="permissions">-rw-r--r--</td> | |
316 </tr> | |
19447
182942b38d24
hgweb: make stripes in directory view with CSS
Alexander Plavin <me@aplavin.ru>
parents:
19076
diff
changeset
|
317 </tbody> |
12432 | 318 </table> |
319 </div> | |
320 </div> | |
14046
b24e5a708fad
web: Made elapsed time calculation dynamic (javascript).
Benoit Allard <benoit@aeteurope.nl>
parents:
13863
diff
changeset
|
321 <script type="text/javascript">process_dates()</script> |
12432 | 322 |
323 | |
324 </body> | |
325 </html> | |
326 | |
5561
22713dce19f6
hgweb: return meaningful HTTP status codes instead of nonsense
Bryan O'Sullivan <bos@serpentine.com>
parents:
5384
diff
changeset
|
327 |
12432 | 328 stop and restart |
329 | |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
330 $ killdaemons.py |
12432 | 331 $ hg serve -p $HGPORT -d --pid-file=hg.pid -A access.log |
332 $ cat hg.pid >> $DAEMON_PIDS | |
5561
22713dce19f6
hgweb: return meaningful HTTP status codes instead of nonsense
Bryan O'Sullivan <bos@serpentine.com>
parents:
5384
diff
changeset
|
333 |
12432 | 334 Test the access/error files are opened in append mode |
335 | |
22947
c63a09b6b337
tests: use $PYTHON instead of hardcoding python
Augie Fackler <raf@durin42.com>
parents:
22578
diff
changeset
|
336 $ $PYTHON -c "print len(file('access.log').readlines()), 'log lines written'" |
22506
6e1fbcb18a75
hgweb: fail if an invalid command was supplied in url path (issue4071)
Anton Shestakov <engored@ya.ru>
parents:
20256
diff
changeset
|
337 14 log lines written |
12432 | 338 |
339 static file | |
5561
22713dce19f6
hgweb: return meaningful HTTP status codes instead of nonsense
Bryan O'Sullivan <bos@serpentine.com>
parents:
5384
diff
changeset
|
340 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
341 $ get-with-headers.py --twice localhost:$HGPORT 'static/style-gitweb.css' - date etag server |
12432 | 342 200 Script output follows |
26536
93a3687a94d7
hgweb: ensure both foreground and background colors are specified (issue4872)
Gijs Kruitbosch <gijskruitbosch@gmail.com>
parents:
26421
diff
changeset
|
343 content-length: 6412 |
18380
a4d7fd7ad1f7
serve: don't send any content headers with 304 responses
Mads Kiilerich <madski@unity3d.com>
parents:
18264
diff
changeset
|
344 content-type: text/css |
12432 | 345 |
26536
93a3687a94d7
hgweb: ensure both foreground and background colors are specified (issue4872)
Gijs Kruitbosch <gijskruitbosch@gmail.com>
parents:
26421
diff
changeset
|
346 body { font-family: sans-serif; font-size: 12px; border:solid #d9d8d1; border-width:1px; margin:10px; background: white; color: black; } |
12432 | 347 a { color:#0000cc; } |
348 a:hover, a:visited, a:active { color:#880000; } | |
349 div.page_header { height:25px; padding:8px; font-size:18px; font-weight:bold; background-color:#d9d8d1; } | |
350 div.page_header a:visited { color:#0000cc; } | |
351 div.page_header a:hover { color:#880000; } | |
352 div.page_nav { padding:8px; } | |
353 div.page_nav a:visited { color:#0000cc; } | |
354 div.page_path { padding:8px; border:solid #d9d8d1; border-width:0px 0px 1px} | |
355 div.page_footer { padding:4px 8px; background-color: #d9d8d1; } | |
356 div.page_footer_text { float:left; color:#555555; font-style:italic; } | |
357 div.page_body { padding:8px; } | |
358 div.title, a.title { | |
359 display:block; padding:6px 8px; | |
360 font-weight:bold; background-color:#edece6; text-decoration:none; color:#000000; | |
361 } | |
362 a.title:hover { background-color: #d9d8d1; } | |
363 div.title_text { padding:6px 0px; border: solid #d9d8d1; border-width:0px 0px 1px; } | |
364 div.log_body { padding:8px 8px 8px 150px; } | |
365 .age { white-space:nowrap; } | |
366 span.age { position:relative; float:left; width:142px; font-style:italic; } | |
367 div.log_link { | |
368 padding:0px 8px; | |
369 font-size:10px; font-family:sans-serif; font-style:normal; | |
370 position:relative; float:left; width:136px; | |
371 } | |
372 div.list_head { padding:6px 8px 4px; border:solid #d9d8d1; border-width:1px 0px 0px; font-style:italic; } | |
373 a.list { text-decoration:none; color:#000000; } | |
374 a.list:hover { text-decoration:underline; color:#880000; } | |
375 table { padding:8px 4px; } | |
376 th { padding:2px 5px; font-size:12px; text-align:left; } | |
26288
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
377 tr.light:hover, .parity0:hover, pre.sourcelines.stripes > :nth-child(4n+1):hover { background-color:#edece6; } |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
378 tr.dark, .parity1, pre.sourcelines.stripes > :nth-child(4n+3) { background-color:#f6f6f0; } |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
379 tr.dark:hover, .parity1:hover, pre.sourcelines.stripes > :nth-child(4n+3):hover { background-color:#edece6; } |
12432 | 380 td { padding:2px 5px; font-size:12px; vertical-align:top; } |
381 td.closed { background-color: #99f; } | |
382 td.link { padding:2px 5px; font-family:sans-serif; font-size:10px; } | |
383 td.indexlinks { white-space: nowrap; } | |
384 td.indexlinks a { | |
385 padding: 2px 5px; line-height: 10px; | |
386 border: 1px solid; | |
387 color: #ffffff; background-color: #7777bb; | |
388 border-color: #aaaadd #333366 #333366 #aaaadd; | |
389 font-weight: bold; text-align: center; text-decoration: none; | |
390 font-size: 10px; | |
391 } | |
392 td.indexlinks a:hover { background-color: #6666aa; } | |
393 div.pre { font-family:monospace; font-size:12px; white-space:pre; } | |
394 div.diff_info { font-family:monospace; color:#000099; background-color:#edece6; font-style:italic; } | |
395 div.index_include { border:solid #d9d8d1; border-width:0px 0px 1px; padding:12px 8px; } | |
396 div.search { margin:4px 8px; position:absolute; top:56px; right:12px } | |
397 .linenr { color:#999999; text-decoration:none } | |
398 div.rss_logo { float: right; white-space: nowrap; } | |
399 div.rss_logo a { | |
400 padding:3px 6px; line-height:10px; | |
401 border:1px solid; border-color:#fcc7a5 #7d3302 #3e1a01 #ff954e; | |
402 color:#ffffff; background-color:#ff6600; | |
403 font-weight:bold; font-family:sans-serif; font-size:10px; | |
404 text-align:center; text-decoration:none; | |
405 } | |
406 div.rss_logo a:hover { background-color:#ee5500; } | |
407 pre { margin: 0; } | |
408 span.logtags span { | |
409 padding: 0px 4px; | |
410 font-size: 10px; | |
411 font-weight: normal; | |
412 border: 1px solid; | |
413 background-color: #ffaaff; | |
414 border-color: #ffccff #ff00ee #ff00ee #ffccff; | |
415 } | |
416 span.logtags span.tagtag { | |
417 background-color: #ffffaa; | |
418 border-color: #ffffcc #ffee00 #ffee00 #ffffcc; | |
419 } | |
420 span.logtags span.branchtag { | |
421 background-color: #aaffaa; | |
422 border-color: #ccffcc #00cc33 #00cc33 #ccffcc; | |
423 } | |
424 span.logtags span.inbranchtag { | |
425 background-color: #d5dde6; | |
426 border-color: #e3ecf4 #9398f4 #9398f4 #e3ecf4; | |
427 } | |
13863
b602ac02f1ba
hgweb: add bookmark labels to gitweb theme (based on 270f57d35525)
Yuya Nishihara <yuya@tcha.org>
parents:
13597
diff
changeset
|
428 span.logtags span.bookmarktag { |
b602ac02f1ba
hgweb: add bookmark labels to gitweb theme (based on 270f57d35525)
Yuya Nishihara <yuya@tcha.org>
parents:
13597
diff
changeset
|
429 background-color: #afdffa; |
b602ac02f1ba
hgweb: add bookmark labels to gitweb theme (based on 270f57d35525)
Yuya Nishihara <yuya@tcha.org>
parents:
13597
diff
changeset
|
430 border-color: #ccecff #46ace6 #46ace6 #ccecff; |
b602ac02f1ba
hgweb: add bookmark labels to gitweb theme (based on 270f57d35525)
Yuya Nishihara <yuya@tcha.org>
parents:
13597
diff
changeset
|
431 } |
23744
d1933c2e3c8c
templates: use CSS classes for diff styling
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23409
diff
changeset
|
432 span.difflineplus { color:#008800; } |
d1933c2e3c8c
templates: use CSS classes for diff styling
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23409
diff
changeset
|
433 span.difflineminus { color:#cc0000; } |
d1933c2e3c8c
templates: use CSS classes for diff styling
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23409
diff
changeset
|
434 span.difflineat { color:#990099; } |
26288
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
435 div.diffblocks { counter-reset: lineno; } |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
436 div.diffblock { counter-increment: lineno; } |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
437 pre.sourcelines { position: relative; counter-reset: lineno; } |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
438 pre.sourcelines > span { |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
439 display: inline-block; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
440 box-sizing: border-box; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
441 width: 100%; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
442 padding: 0 0 0 5em; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
443 counter-increment: lineno; |
26362
3bfc473f4d33
gitweb, monoblue: fix vertical align of spans in .sourcelines
Anton Shestakov <av6@dwimlabs.net>
parents:
26288
diff
changeset
|
444 vertical-align: top; |
26288
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
445 } |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
446 pre.sourcelines > span:before { |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
447 -moz-user-select: -moz-none; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
448 -khtml-user-select: none; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
449 -webkit-user-select: none; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
450 -ms-user-select: none; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
451 user-select: none; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
452 display: inline-block; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
453 margin-left: -5em; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
454 width: 4em; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
455 color: #999; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
456 text-align: right; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
457 content: counters(lineno,"."); |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
458 float: left; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
459 } |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
460 pre.sourcelines > a { |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
461 display: inline-block; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
462 position: absolute; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
463 left: 0px; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
464 width: 4em; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
465 height: 1em; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
466 } |
26363
f29ee23bf361
gitweb, monoblue: port highlighting linked lines from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26362
diff
changeset
|
467 tr:target td, |
f29ee23bf361
gitweb, monoblue: port highlighting linked lines from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26362
diff
changeset
|
468 pre.sourcelines > span:target, |
f29ee23bf361
gitweb, monoblue: port highlighting linked lines from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26362
diff
changeset
|
469 pre.sourcelines.stripes > span:target { |
f29ee23bf361
gitweb, monoblue: port highlighting linked lines from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26362
diff
changeset
|
470 background-color: #bfdfff; |
f29ee23bf361
gitweb, monoblue: port highlighting linked lines from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26362
diff
changeset
|
471 } |
12432 | 472 |
473 /* Graph */ | |
474 div#wrapper { | |
475 position: relative; | |
476 margin: 0; | |
477 padding: 0; | |
478 margin-top: 3px; | |
479 } | |
480 | |
481 canvas { | |
482 position: absolute; | |
483 z-index: 5; | |
484 top: -0.9em; | |
485 margin: 0; | |
486 } | |
487 | |
488 ul#nodebgs { | |
489 list-style: none inside none; | |
490 padding: 0; | |
491 margin: 0; | |
492 top: -0.7em; | |
493 } | |
494 | |
495 ul#graphnodes li, ul#nodebgs li { | |
496 height: 39px; | |
497 } | |
498 | |
499 ul#graphnodes { | |
500 position: absolute; | |
501 z-index: 10; | |
502 top: -0.8em; | |
503 list-style: none inside none; | |
504 padding: 0; | |
505 } | |
506 | |
507 ul#graphnodes li .info { | |
508 display: block; | |
509 font-size: 100%; | |
510 position: relative; | |
511 top: -3px; | |
512 font-style: italic; | |
513 } | |
17202
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
514 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
515 /* Comparison */ |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
516 .legend { |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
517 padding: 1.5% 0 1.5% 0; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
518 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
519 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
520 .legendinfo { |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
521 border: 1px solid #d9d8d1; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
522 font-size: 80%; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
523 text-align: center; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
524 padding: 0.5%; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
525 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
526 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
527 .equal { |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
528 background-color: #ffffff; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
529 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
530 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
531 .delete { |
17243
106cdea0183d
hgweb: improve colors for comparison page
Matt Mackall <mpm@selenic.com>
parents:
17202
diff
changeset
|
532 background-color: #faa; |
106cdea0183d
hgweb: improve colors for comparison page
Matt Mackall <mpm@selenic.com>
parents:
17202
diff
changeset
|
533 color: #333; |
17202
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
534 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
535 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
536 .insert { |
17243
106cdea0183d
hgweb: improve colors for comparison page
Matt Mackall <mpm@selenic.com>
parents:
17202
diff
changeset
|
537 background-color: #ffa; |
17202
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
538 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
539 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
540 .replace { |
17243
106cdea0183d
hgweb: improve colors for comparison page
Matt Mackall <mpm@selenic.com>
parents:
17202
diff
changeset
|
541 background-color: #e8e8e8; |
17202
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
542 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
543 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
544 .comparison { |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
545 overflow-x: auto; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
546 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
547 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
548 .header th { |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
549 text-align: center; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
550 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
551 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
552 .block { |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
553 border-top: 1px solid #d9d8d1; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
554 } |
20256
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
555 |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
556 .scroll-loading { |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
557 -webkit-animation: change_color 1s linear 0s infinite alternate; |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
558 -moz-animation: change_color 1s linear 0s infinite alternate; |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
559 -o-animation: change_color 1s linear 0s infinite alternate; |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
560 animation: change_color 1s linear 0s infinite alternate; |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
561 } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
562 |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
563 @-webkit-keyframes change_color { |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
564 from { background-color: #A0CEFF; } to { } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
565 } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
566 @-moz-keyframes change_color { |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
567 from { background-color: #A0CEFF; } to { } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
568 } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
569 @-o-keyframes change_color { |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
570 from { background-color: #A0CEFF; } to { } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
571 } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
572 @keyframes change_color { |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
573 from { background-color: #A0CEFF; } to { } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
574 } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
575 |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
576 .scroll-loading-error { |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
577 background-color: #FFCCCC !important; |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
578 } |
26175
eae3c6de71e5
tests: fix css-related test-hgweb.t breakage from 93258d53ec35
Anton Shestakov <av6@dwimlabs.net>
parents:
25777
diff
changeset
|
579 |
eae3c6de71e5
tests: fix css-related test-hgweb.t breakage from 93258d53ec35
Anton Shestakov <av6@dwimlabs.net>
parents:
25777
diff
changeset
|
580 #doc { |
eae3c6de71e5
tests: fix css-related test-hgweb.t breakage from 93258d53ec35
Anton Shestakov <av6@dwimlabs.net>
parents:
25777
diff
changeset
|
581 margin: 0 8px; |
eae3c6de71e5
tests: fix css-related test-hgweb.t breakage from 93258d53ec35
Anton Shestakov <av6@dwimlabs.net>
parents:
25777
diff
changeset
|
582 } |
12432 | 583 304 Not Modified |
584 | |
9842
d3dbdca92458
hgweb: don't choke when an inexistent style is requested (issue1901)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
8167
diff
changeset
|
585 |
22577
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
586 phase changes are refreshed (issue4061) |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
587 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
588 $ echo bar >> foo |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
589 $ hg ci -msecret --secret |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
590 $ get-with-headers.py localhost:$HGPORT 'log?style=raw' |
22577
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
591 200 Script output follows |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
592 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
593 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
594 # HG changelog |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
595 # Node ID 2ef0ac749a14e4f57a5a822464a0902c6f7f448f |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
596 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
597 changeset: 2ef0ac749a14e4f57a5a822464a0902c6f7f448f |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
598 revision: 0 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
599 user: test |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
600 date: Thu, 01 Jan 1970 00:00:00 +0000 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
601 summary: base |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
602 branch: default |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
603 tag: tip |
25777
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
604 bookmark: @ |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
605 bookmark: a b c |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
606 bookmark: d/e/f |
22577
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
607 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
608 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
609 $ hg phase --draft tip |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
610 $ get-with-headers.py localhost:$HGPORT 'log?style=raw' |
22577
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
611 200 Script output follows |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
612 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
613 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
614 # HG changelog |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
615 # Node ID a084749e708a9c4c0a5b652a2a446322ce290e04 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
616 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
617 changeset: a084749e708a9c4c0a5b652a2a446322ce290e04 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
618 revision: 1 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
619 user: test |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
620 date: Thu, 01 Jan 1970 00:00:00 +0000 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
621 summary: secret |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
622 branch: default |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
623 tag: tip |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
624 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
625 changeset: 2ef0ac749a14e4f57a5a822464a0902c6f7f448f |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
626 revision: 0 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
627 user: test |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
628 date: Thu, 01 Jan 1970 00:00:00 +0000 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
629 summary: base |
25777
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
630 bookmark: @ |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
631 bookmark: a b c |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
632 bookmark: d/e/f |
22577
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
633 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
634 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
635 |
25777
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
636 access bookmarks |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
637 |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
638 $ get-with-headers.py localhost:$HGPORT 'rev/@?style=paper' | egrep '^200|changeset 0:' |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
639 200 Script output follows |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
640 changeset 0:<a href="/rev/2ef0ac749a14?style=paper">2ef0ac749a14</a> |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
641 |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
642 $ get-with-headers.py localhost:$HGPORT 'rev/%40?style=paper' | egrep '^200|changeset 0:' |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
643 200 Script output follows |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
644 changeset 0:<a href="/rev/2ef0ac749a14?style=paper">2ef0ac749a14</a> |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
645 |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
646 $ get-with-headers.py localhost:$HGPORT 'rev/a%20b%20c?style=paper' | egrep '^200|changeset 0:' |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
647 200 Script output follows |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
648 changeset 0:<a href="/rev/2ef0ac749a14?style=paper">2ef0ac749a14</a> |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
649 |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
650 $ get-with-headers.py localhost:$HGPORT 'rev/d%252Fe%252Ff?style=paper' | egrep '^200|changeset 0:' |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
651 200 Script output follows |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
652 changeset 0:<a href="/rev/2ef0ac749a14?style=paper">2ef0ac749a14</a> |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
653 |
24296
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
654 no style can be loaded from directories other than the specified paths |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
655 |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
656 $ mkdir -p x/templates/fallback |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
657 $ cat <<EOF > x/templates/fallback/map |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
658 > default = 'shortlog' |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
659 > shortlog = 'fall back to default\n' |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
660 > mimetype = 'text/plain' |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
661 > EOF |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
662 $ cat <<EOF > x/map |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
663 > default = 'shortlog' |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
664 > shortlog = 'access to outside of templates directory\n' |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
665 > mimetype = 'text/plain' |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
666 > EOF |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
667 |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
668 $ killdaemons.py |
24296
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
669 $ hg serve -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log \ |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
670 > --config web.style=fallback --config web.templates=x/templates |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
671 $ cat hg.pid >> $DAEMON_PIDS |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
672 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
673 $ get-with-headers.py localhost:$HGPORT "?style=`pwd`/x" |
24296
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
674 200 Script output follows |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
675 |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
676 fall back to default |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
677 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
678 $ get-with-headers.py localhost:$HGPORT '?style=..' |
24296
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
679 200 Script output follows |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
680 |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
681 fall back to default |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
682 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
683 $ get-with-headers.py localhost:$HGPORT '?style=./..' |
24296
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
684 200 Script output follows |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
685 |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
686 fall back to default |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
687 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
688 $ get-with-headers.py localhost:$HGPORT '?style=.../.../' |
24296
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
689 200 Script output follows |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
690 |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
691 fall back to default |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
692 |
12432 | 693 errors |
5690
1b365c5723bc
server: append to logfiles
Mirko Friedenhagen <mirko-lists@friedenhagen.de>
parents:
5580
diff
changeset
|
694 |
12432 | 695 $ cat errors.log |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15446
diff
changeset
|
696 |
23409
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
697 Uncaught exceptions result in a logged error and canned HTTP response |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
698 |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
699 $ killdaemons.py |
23409
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
700 $ hg --config extensions.hgweberror=$TESTDIR/hgweberror.py serve -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
701 $ cat hg.pid >> $DAEMON_PIDS |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
702 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
703 $ get-with-headers.py localhost:$HGPORT 'raiseerror' transfer-encoding content-type |
23409
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
704 500 Internal Server Error |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
705 transfer-encoding: chunked |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
706 |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
707 Internal Server Error (no-eol) |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
708 [1] |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
709 |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
710 $ killdaemons.py |
23409
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
711 $ head -1 errors.log |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
712 .* Exception happened during processing request '/raiseerror': (re) |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
713 |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
714 Uncaught exception after partial content sent |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
715 |
23952
ea61e278ae92
test-hgweb: fix shutdown race
Matt Mackall <mpm@selenic.com>
parents:
23744
diff
changeset
|
716 $ hg --config extensions.hgweberror=$TESTDIR/hgweberror.py serve -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log |
ea61e278ae92
test-hgweb: fix shutdown race
Matt Mackall <mpm@selenic.com>
parents:
23744
diff
changeset
|
717 $ cat hg.pid >> $DAEMON_PIDS |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
718 $ get-with-headers.py localhost:$HGPORT 'raiseerror?partialresponse=1' transfer-encoding content-type |
23409
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
719 200 Script output follows |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
720 transfer-encoding: chunked |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
721 content-type: text/plain |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
722 |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
723 partial content |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
724 Internal Server Error (no-eol) |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
725 |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
726 $ killdaemons.py |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15446
diff
changeset
|
727 $ cd .. |