Mercurial > hg
annotate tests/test-hgweb.t @ 30435:b86a448a2965
zstd: vendor python-zstandard 0.5.0
As the commit message for the previous changeset says, we wish
for zstd to be a 1st class citizen in Mercurial. To make that
happen, we need to enable Python to talk to the zstd C API. And
that requires bindings.
This commit vendors a copy of existing Python bindings. Why do we
need to vendor? As the commit message of the previous commit says,
relying on systems in the wild to have the bindings or zstd present
is a losing proposition. By distributing the zstd and bindings with
Mercurial, we significantly increase our chances that zstd will
work. Since zstd will deliver a better end-user experience by
achieving better performance, this benefits our users. Another
reason is that the Python bindings still aren't stable and the
API is somewhat fluid. While Mercurial could be coded to target
multiple versions of the Python bindings, it is safer to bundle
an explicit, known working version.
The added Python bindings are mostly a fully-featured interface
to the zstd C API. They allow one-shot operations, streaming,
reading and writing from objects implements the file object
protocol, dictionary compression, control over low-level compression
parameters, and more. The Python bindings work on Python 2.6,
2.7, and 3.3+ and have been tested on Linux and Windows. There are
CFFI bindings, but they are lacking compared to the C extension.
Upstream work will be needed before we can support zstd with PyPy.
But it will be possible.
The files added in this commit come from Git commit
e637c1b214d5f869cf8116c550dcae23ec13b677 from
https://github.com/indygreg/python-zstandard and are added without
modifications. Some files from the upstream repository have been
omitted, namely files related to continuous integration.
In the spirit of full disclosure, I'm the maintainer of the
"python-zstandard" project and have authored 100% of the code
added in this commit. Unfortunately, the Python bindings have
not been formally code reviewed by anyone. While I've tested
much of the code thoroughly (I even have tests that fuzz APIs),
there's a good chance there are bugs, memory leaks, not well
thought out APIs, etc. If someone wants to review the code and
send feedback to the GitHub project, it would be greatly
appreciated.
Despite my involvement with both projects, my opinions of code
style differ from Mercurial's. The code in this commit introduces
numerous code style violations in Mercurial's linters. So, the code
is excluded from most lints. However, some violations I agree with.
These have been added to the known violations ignore list for now.
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Thu, 10 Nov 2016 22:15:58 -0800 |
parents | 8f34e217338b |
children | eb7de21b15be |
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 |
30074
8f34e217338b
hgweb: avoid line wrap between revision and annotate-info (issue5398)
Tooru Fujisawa <arai.unmht@gmail.com>
parents:
29626
diff
changeset
|
343 content-length: 6986 |
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; } | |
29573
2b42fa1810c4
gitweb: make different blocks of annotated lines have different colors
Anton Shestakov <av6@dwimlabs.net>
parents:
29522
diff
changeset
|
377 .parity0 { background-color:#ffffff; } |
26670
ab2cd800f1b0
gitweb: visually highlight source lines when hovering over line numbers
Anton Shestakov <av6@dwimlabs.net>
parents:
26536
diff
changeset
|
378 tr.dark, .parity1, pre.sourcelines.stripes > :nth-child(4n+4) { background-color:#f6f6f0; } |
ab2cd800f1b0
gitweb: visually highlight source lines when hovering over line numbers
Anton Shestakov <av6@dwimlabs.net>
parents:
26536
diff
changeset
|
379 tr.light:hover, .parity0:hover, tr.dark:hover, .parity1:hover, |
ab2cd800f1b0
gitweb: visually highlight source lines when hovering over line numbers
Anton Shestakov <av6@dwimlabs.net>
parents:
26536
diff
changeset
|
380 pre.sourcelines.stripes > :nth-child(4n+2):hover, |
ab2cd800f1b0
gitweb: visually highlight source lines when hovering over line numbers
Anton Shestakov <av6@dwimlabs.net>
parents:
26536
diff
changeset
|
381 pre.sourcelines.stripes > :nth-child(4n+4):hover, |
ab2cd800f1b0
gitweb: visually highlight source lines when hovering over line numbers
Anton Shestakov <av6@dwimlabs.net>
parents:
26536
diff
changeset
|
382 pre.sourcelines.stripes > :nth-child(4n+1):hover + :nth-child(4n+2), |
ab2cd800f1b0
gitweb: visually highlight source lines when hovering over line numbers
Anton Shestakov <av6@dwimlabs.net>
parents:
26536
diff
changeset
|
383 pre.sourcelines.stripes > :nth-child(4n+3):hover + :nth-child(4n+4) { background-color:#edece6; } |
12432 | 384 td { padding:2px 5px; font-size:12px; vertical-align:top; } |
385 td.closed { background-color: #99f; } | |
386 td.link { padding:2px 5px; font-family:sans-serif; font-size:10px; } | |
387 td.indexlinks { white-space: nowrap; } | |
388 td.indexlinks a { | |
389 padding: 2px 5px; line-height: 10px; | |
390 border: 1px solid; | |
391 color: #ffffff; background-color: #7777bb; | |
392 border-color: #aaaadd #333366 #333366 #aaaadd; | |
393 font-weight: bold; text-align: center; text-decoration: none; | |
394 font-size: 10px; | |
395 } | |
396 td.indexlinks a:hover { background-color: #6666aa; } | |
397 div.pre { font-family:monospace; font-size:12px; white-space:pre; } | |
398 div.diff_info { font-family:monospace; color:#000099; background-color:#edece6; font-style:italic; } | |
399 div.index_include { border:solid #d9d8d1; border-width:0px 0px 1px; padding:12px 8px; } | |
400 div.search { margin:4px 8px; position:absolute; top:56px; right:12px } | |
29387
6b77adc2c7b5
hgweb: highlight data of the current revision in annotate view
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
28549
diff
changeset
|
401 tr.thisrev a { color:#999999; text-decoration: none; } |
6b77adc2c7b5
hgweb: highlight data of the current revision in annotate view
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
28549
diff
changeset
|
402 tr.thisrev pre { color:#009900; } |
30074
8f34e217338b
hgweb: avoid line wrap between revision and annotate-info (issue5398)
Tooru Fujisawa <arai.unmht@gmail.com>
parents:
29626
diff
changeset
|
403 td.annotate { |
8f34e217338b
hgweb: avoid line wrap between revision and annotate-info (issue5398)
Tooru Fujisawa <arai.unmht@gmail.com>
parents:
29626
diff
changeset
|
404 white-space: nowrap; |
8f34e217338b
hgweb: avoid line wrap between revision and annotate-info (issue5398)
Tooru Fujisawa <arai.unmht@gmail.com>
parents:
29626
diff
changeset
|
405 } |
29522
9c37df347485
hgweb: add link to parents of annotated revision in annotate view
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
29387
diff
changeset
|
406 div.annotate-info { |
9c37df347485
hgweb: add link to parents of annotated revision in annotate view
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
29387
diff
changeset
|
407 display: none; |
9c37df347485
hgweb: add link to parents of annotated revision in annotate view
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
29387
diff
changeset
|
408 position: absolute; |
9c37df347485
hgweb: add link to parents of annotated revision in annotate view
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
29387
diff
changeset
|
409 background-color: #FFFFFF; |
29626
4317aa562580
gitweb: make annotate popup use theme colors
Anton Shestakov <av6@dwimlabs.net>
parents:
29573
diff
changeset
|
410 border: 1px solid #d9d8d1; |
29522
9c37df347485
hgweb: add link to parents of annotated revision in annotate view
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
29387
diff
changeset
|
411 text-align: left; |
9c37df347485
hgweb: add link to parents of annotated revision in annotate view
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
29387
diff
changeset
|
412 color: #000000; |
9c37df347485
hgweb: add link to parents of annotated revision in annotate view
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
29387
diff
changeset
|
413 padding: 5px; |
9c37df347485
hgweb: add link to parents of annotated revision in annotate view
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
29387
diff
changeset
|
414 } |
9c37df347485
hgweb: add link to parents of annotated revision in annotate view
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
29387
diff
changeset
|
415 div.annotate-info a { color: #0000FF; text-decoration: underline; } |
9c37df347485
hgweb: add link to parents of annotated revision in annotate view
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
29387
diff
changeset
|
416 td.annotate:hover div.annotate-info { display: inline; } |
12432 | 417 .linenr { color:#999999; text-decoration:none } |
418 div.rss_logo { float: right; white-space: nowrap; } | |
419 div.rss_logo a { | |
420 padding:3px 6px; line-height:10px; | |
421 border:1px solid; border-color:#fcc7a5 #7d3302 #3e1a01 #ff954e; | |
422 color:#ffffff; background-color:#ff6600; | |
423 font-weight:bold; font-family:sans-serif; font-size:10px; | |
424 text-align:center; text-decoration:none; | |
425 } | |
426 div.rss_logo a:hover { background-color:#ee5500; } | |
427 pre { margin: 0; } | |
428 span.logtags span { | |
429 padding: 0px 4px; | |
430 font-size: 10px; | |
431 font-weight: normal; | |
432 border: 1px solid; | |
433 background-color: #ffaaff; | |
434 border-color: #ffccff #ff00ee #ff00ee #ffccff; | |
435 } | |
436 span.logtags span.tagtag { | |
437 background-color: #ffffaa; | |
438 border-color: #ffffcc #ffee00 #ffee00 #ffffcc; | |
439 } | |
440 span.logtags span.branchtag { | |
441 background-color: #aaffaa; | |
442 border-color: #ccffcc #00cc33 #00cc33 #ccffcc; | |
443 } | |
444 span.logtags span.inbranchtag { | |
445 background-color: #d5dde6; | |
446 border-color: #e3ecf4 #9398f4 #9398f4 #e3ecf4; | |
447 } | |
13863
b602ac02f1ba
hgweb: add bookmark labels to gitweb theme (based on 270f57d35525)
Yuya Nishihara <yuya@tcha.org>
parents:
13597
diff
changeset
|
448 span.logtags span.bookmarktag { |
b602ac02f1ba
hgweb: add bookmark labels to gitweb theme (based on 270f57d35525)
Yuya Nishihara <yuya@tcha.org>
parents:
13597
diff
changeset
|
449 background-color: #afdffa; |
b602ac02f1ba
hgweb: add bookmark labels to gitweb theme (based on 270f57d35525)
Yuya Nishihara <yuya@tcha.org>
parents:
13597
diff
changeset
|
450 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
|
451 } |
23744
d1933c2e3c8c
templates: use CSS classes for diff styling
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23409
diff
changeset
|
452 span.difflineplus { color:#008800; } |
d1933c2e3c8c
templates: use CSS classes for diff styling
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23409
diff
changeset
|
453 span.difflineminus { color:#cc0000; } |
d1933c2e3c8c
templates: use CSS classes for diff styling
Gregory Szorc <gregory.szorc@gmail.com>
parents:
23409
diff
changeset
|
454 span.difflineat { color:#990099; } |
26288
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
455 div.diffblocks { counter-reset: lineno; } |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
456 div.diffblock { counter-increment: lineno; } |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
457 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
|
458 pre.sourcelines > span { |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
459 display: inline-block; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
460 box-sizing: border-box; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
461 width: 100%; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
462 padding: 0 0 0 5em; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
463 counter-increment: lineno; |
26362
3bfc473f4d33
gitweb, monoblue: fix vertical align of spans in .sourcelines
Anton Shestakov <av6@dwimlabs.net>
parents:
26288
diff
changeset
|
464 vertical-align: top; |
26288
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
465 } |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
466 pre.sourcelines > span:before { |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
467 -moz-user-select: -moz-none; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
468 -khtml-user-select: none; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
469 -webkit-user-select: none; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
470 -ms-user-select: none; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
471 user-select: none; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
472 display: inline-block; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
473 margin-left: -5em; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
474 width: 4em; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
475 color: #999; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
476 text-align: right; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
477 content: counters(lineno,"."); |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
478 float: left; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
479 } |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
480 pre.sourcelines > a { |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
481 display: inline-block; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
482 position: absolute; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
483 left: 0px; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
484 width: 4em; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
485 height: 1em; |
2239626369f5
gitweb: port code selection without line numbers from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26175
diff
changeset
|
486 } |
26363
f29ee23bf361
gitweb, monoblue: port highlighting linked lines from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26362
diff
changeset
|
487 tr:target td, |
f29ee23bf361
gitweb, monoblue: port highlighting linked lines from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26362
diff
changeset
|
488 pre.sourcelines > span:target, |
f29ee23bf361
gitweb, monoblue: port highlighting linked lines from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26362
diff
changeset
|
489 pre.sourcelines.stripes > span:target { |
f29ee23bf361
gitweb, monoblue: port highlighting linked lines from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26362
diff
changeset
|
490 background-color: #bfdfff; |
f29ee23bf361
gitweb, monoblue: port highlighting linked lines from paper
Anton Shestakov <av6@dwimlabs.net>
parents:
26362
diff
changeset
|
491 } |
12432 | 492 |
493 /* Graph */ | |
494 div#wrapper { | |
495 position: relative; | |
496 margin: 0; | |
497 padding: 0; | |
498 margin-top: 3px; | |
499 } | |
500 | |
501 canvas { | |
502 position: absolute; | |
503 z-index: 5; | |
504 top: -0.9em; | |
505 margin: 0; | |
506 } | |
507 | |
508 ul#nodebgs { | |
509 list-style: none inside none; | |
510 padding: 0; | |
511 margin: 0; | |
512 top: -0.7em; | |
513 } | |
514 | |
515 ul#graphnodes li, ul#nodebgs li { | |
516 height: 39px; | |
517 } | |
518 | |
519 ul#graphnodes { | |
520 position: absolute; | |
521 z-index: 10; | |
522 top: -0.8em; | |
523 list-style: none inside none; | |
524 padding: 0; | |
525 } | |
526 | |
527 ul#graphnodes li .info { | |
528 display: block; | |
529 font-size: 100%; | |
530 position: relative; | |
531 top: -3px; | |
532 font-style: italic; | |
533 } | |
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 /* Comparison */ |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
536 .legend { |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
537 padding: 1.5% 0 1.5% 0; |
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 .legendinfo { |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
541 border: 1px solid #d9d8d1; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
542 font-size: 80%; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
543 text-align: center; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
544 padding: 0.5%; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
545 } |
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 .equal { |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
548 background-color: #ffffff; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
549 } |
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 .delete { |
17243
106cdea0183d
hgweb: improve colors for comparison page
Matt Mackall <mpm@selenic.com>
parents:
17202
diff
changeset
|
552 background-color: #faa; |
106cdea0183d
hgweb: improve colors for comparison page
Matt Mackall <mpm@selenic.com>
parents:
17202
diff
changeset
|
553 color: #333; |
17202
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
554 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
555 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
556 .insert { |
17243
106cdea0183d
hgweb: improve colors for comparison page
Matt Mackall <mpm@selenic.com>
parents:
17202
diff
changeset
|
557 background-color: #ffa; |
17202
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
558 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
559 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
560 .replace { |
17243
106cdea0183d
hgweb: improve colors for comparison page
Matt Mackall <mpm@selenic.com>
parents:
17202
diff
changeset
|
561 background-color: #e8e8e8; |
17202
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
562 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
563 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
564 .comparison { |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
565 overflow-x: auto; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
566 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
567 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
568 .header th { |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
569 text-align: center; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
570 } |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
571 |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
572 .block { |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
573 border-top: 1px solid #d9d8d1; |
1ae119269ddc
hgweb: side-by-side comparison functionality
wujek srujek
parents:
17017
diff
changeset
|
574 } |
20256
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 { |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
577 -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
|
578 -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
|
579 -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
|
580 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
|
581 } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
582 |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
583 @-webkit-keyframes change_color { |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
584 from { background-color: #A0CEFF; } to { } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
585 } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
586 @-moz-keyframes change_color { |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
587 from { background-color: #A0CEFF; } to { } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
588 } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
589 @-o-keyframes change_color { |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
590 from { background-color: #A0CEFF; } to { } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
591 } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
592 @keyframes change_color { |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
593 from { background-color: #A0CEFF; } to { } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
594 } |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
595 |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
596 .scroll-loading-error { |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
597 background-color: #FFCCCC !important; |
b786754ba604
test-hgweb-*: output change fixes from b1d65cb8
Augie Fackler <raf@durin42.com>
parents:
19796
diff
changeset
|
598 } |
26175
eae3c6de71e5
tests: fix css-related test-hgweb.t breakage from 93258d53ec35
Anton Shestakov <av6@dwimlabs.net>
parents:
25777
diff
changeset
|
599 |
eae3c6de71e5
tests: fix css-related test-hgweb.t breakage from 93258d53ec35
Anton Shestakov <av6@dwimlabs.net>
parents:
25777
diff
changeset
|
600 #doc { |
eae3c6de71e5
tests: fix css-related test-hgweb.t breakage from 93258d53ec35
Anton Shestakov <av6@dwimlabs.net>
parents:
25777
diff
changeset
|
601 margin: 0 8px; |
eae3c6de71e5
tests: fix css-related test-hgweb.t breakage from 93258d53ec35
Anton Shestakov <av6@dwimlabs.net>
parents:
25777
diff
changeset
|
602 } |
12432 | 603 304 Not Modified |
604 | |
9842
d3dbdca92458
hgweb: don't choke when an inexistent style is requested (issue1901)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
8167
diff
changeset
|
605 |
22577
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
606 phase changes are refreshed (issue4061) |
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 $ echo bar >> foo |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
609 $ hg ci -msecret --secret |
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 2ef0ac749a14e4f57a5a822464a0902c6f7f448f |
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: 2ef0ac749a14e4f57a5a822464a0902c6f7f448f |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
618 revision: 0 |
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: base |
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 |
25777
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
624 bookmark: @ |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
625 bookmark: a b c |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
626 bookmark: d/e/f |
22577
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
627 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
628 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
629 $ hg phase --draft tip |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
630 $ 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
|
631 200 Script output follows |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
632 |
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 # HG changelog |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
635 # Node ID a084749e708a9c4c0a5b652a2a446322ce290e04 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
636 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
637 changeset: a084749e708a9c4c0a5b652a2a446322ce290e04 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
638 revision: 1 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
639 user: test |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
640 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
|
641 summary: secret |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
642 branch: default |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
643 tag: tip |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
644 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
645 changeset: 2ef0ac749a14e4f57a5a822464a0902c6f7f448f |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
646 revision: 0 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
647 user: test |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
648 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
|
649 summary: base |
25777
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
650 bookmark: @ |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
651 bookmark: a b c |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
652 bookmark: d/e/f |
22577
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
653 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
654 |
a111e460318a
hgweb: refresh hgweb.repo on phase change (issue4061)
Anton Shestakov <engored@ya.ru>
parents:
22506
diff
changeset
|
655 |
25777
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
656 access bookmarks |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
657 |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
658 $ 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
|
659 200 Script output follows |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
660 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
|
661 |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
662 $ 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
|
663 200 Script output follows |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
664 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
|
665 |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
666 $ 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
|
667 200 Script output follows |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
668 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
|
669 |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
670 $ 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
|
671 200 Script output follows |
1c2a8db33b8f
hgweb: allow symbolic revisions with forward slashes in urls
Anton Shestakov <av6@dwimlabs.net>
parents:
25617
diff
changeset
|
672 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
|
673 |
24296
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
674 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
|
675 |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
676 $ 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
|
677 $ 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
|
678 > default = 'shortlog' |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
679 > 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
|
680 > mimetype = 'text/plain' |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
681 > EOF |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
682 $ 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
|
683 > default = 'shortlog' |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
684 > 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
|
685 > mimetype = 'text/plain' |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
686 > EOF |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
687 |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
688 $ killdaemons.py |
24296
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
689 $ 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
|
690 > --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
|
691 $ 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
|
692 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
693 $ 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
|
694 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
|
695 |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
696 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
|
697 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
698 $ 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
|
699 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
|
700 |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
701 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
|
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 '?style=./..' |
24296
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
704 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
|
705 |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
706 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
|
707 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
708 $ 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
|
709 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
|
710 |
b73a22d1d9bf
hgweb: prevent loading style map from directories other than specified paths
Yuya Nishihara <yuya@tcha.org>
parents:
23952
diff
changeset
|
711 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
|
712 |
12432 | 713 errors |
5690
1b365c5723bc
server: append to logfiles
Mirko Friedenhagen <mirko-lists@friedenhagen.de>
parents:
5580
diff
changeset
|
714 |
12432 | 715 $ cat errors.log |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15446
diff
changeset
|
716 |
23409
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
717 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
|
718 |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
719 $ killdaemons.py |
28549 | 720 $ hg serve --config extensions.hgweberror=$TESTDIR/hgweberror.py -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log |
23409
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
721 $ cat hg.pid >> $DAEMON_PIDS |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
722 |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
723 $ 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
|
724 500 Internal Server Error |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
725 transfer-encoding: chunked |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
726 |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
727 Internal Server Error (no-eol) |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
728 [1] |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
729 |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
730 $ killdaemons.py |
23409
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
731 $ head -1 errors.log |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
732 .* 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
|
733 |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
734 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
|
735 |
28549 | 736 $ hg serve --config extensions.hgweberror=$TESTDIR/hgweberror.py -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log |
23952
ea61e278ae92
test-hgweb: fix shutdown race
Matt Mackall <mpm@selenic.com>
parents:
23744
diff
changeset
|
737 $ cat hg.pid >> $DAEMON_PIDS |
25472
4d2b9b304ad0
tests: drop explicit $TESTDIR from executables
Matt Mackall <mpm@selenic.com>
parents:
24303
diff
changeset
|
738 $ 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
|
739 200 Script output follows |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
740 transfer-encoding: chunked |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
741 content-type: text/plain |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
742 |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
743 partial content |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
744 Internal Server Error (no-eol) |
dc4d2cd3aa3e
hgweb: send proper HTTP response after uncaught exception
Gregory Szorc <gregory.szorc@gmail.com>
parents:
22947
diff
changeset
|
745 |
25474
8c14f87bd0ae
tests: drop DAEMON_PIDS from killdaemons calls
Matt Mackall <mpm@selenic.com>
parents:
25472
diff
changeset
|
746 $ killdaemons.py |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15446
diff
changeset
|
747 $ cd .. |