##// END OF EJS Templates
tests: fix tests broken by 03b60f2f90bf
Dirkjan Ochtman -
r7395:e2048f5c default
parent child Browse files
Show More
1 NO CONTENT: modified file, binary diff hidden
NO CONTENT: modified file, binary diff hidden
@@ -1,390 +1,372 b''
1 % setting up repo
1 % setting up repo
2 adding a
2 adding a
3 adding b
3 adding b
4 % change permissions for git diffs
4 % change permissions for git diffs
5 % set up hgweb
5 % set up hgweb
6 % revision
6 % revision
7 200 Script output follows
7 200 Script output follows
8
8
9 <!-- quirksmode -->
9 <!-- quirksmode -->
10 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
10 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
11 <html>
11 <html>
12 <head>
12 <head>
13 <link rel="icon" href="/static/hgicon.png" type="image/png">
13 <link rel="icon" href="/static/hgicon.png" type="image/png">
14 <meta name="robots" content="index, nofollow" />
14 <meta name="robots" content="index, nofollow" />
15 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
15 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
16
16
17 <title>test: 0cd96de13884</title>
17 <title>test: 0cd96de13884</title>
18 </head>
18 </head>
19 <body>
19 <body>
20 <div class="container">
20 <div class="container">
21 <div class="menu">
21 <div class="menu">
22 <div class="logo">
22 <div class="logo">
23 <a href="http://www.selenic.com/mercurial/">
23 <a href="http://www.selenic.com/mercurial/">
24 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
24 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
25 </div>
25 </div>
26 <ul>
26 <ul>
27 <li><a href="/shortlog/0cd96de13884">log</a></li>
27 <li><a href="/shortlog/0cd96de13884">log</a></li>
28 <li><a href="/graph/0cd96de13884">graph</a></li>
28 <li><a href="/graph/0cd96de13884">graph</a></li>
29 <li><a href="/tags">tags</a></li>
29 <li><a href="/tags">tags</a></li>
30 </ul>
30 </ul>
31 <ul>
31 <ul>
32 <li class="active">changeset</li>
32 <li class="active">changeset</li>
33 <li><a href="/raw-rev/0cd96de13884">raw</a></li>
33 <li><a href="/raw-rev/0cd96de13884">raw</a></li>
34 <li><a href="/file/0cd96de13884">browse</a></li>
34 <li><a href="/file/0cd96de13884">browse</a></li>
35 </ul>
35 </ul>
36 <ul>
36 <ul>
37
37
38 </ul>
38 </ul>
39 </div>
39 </div>
40
40
41 <div class="main">
41 <div class="main">
42
42
43 <h2><a href="/">test</a></h2>
43 <h2><a href="/">test</a></h2>
44 <h3>changeset 0:0cd96de13884 </h3>
44 <h3>changeset 0:0cd96de13884 </h3>
45
45
46 <form class="search" action="/log">
46 <form class="search" action="/log">
47
47
48 <p><input name="rev" id="search1" type="text" size="30"></p>
48 <p><input name="rev" id="search1" type="text" size="30"></p>
49 <span>find changesets by author, revision,
49 <span>find changesets by author, revision,
50 files, or words in the commit message</span>
50 files, or words in the commit message</span>
51 </form>
51 </form>
52
52
53 <div class="description">a</div>
53 <div class="description">a</div>
54
54
55 <table id="changesetEntry">
55 <table id="changesetEntry">
56 <tr>
56 <tr>
57 <th class="author">author</th>
57 <th class="author">author</th>
58 <td class="author">&#116;&#101;&#115;&#116;</td>
58 <td class="author">&#116;&#101;&#115;&#116;</td>
59 </tr>
59 </tr>
60 <tr>
60 <tr>
61 <th class="date">date</th>
61 <th class="date">date</th>
62 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (38 years ago)</td></tr>
62 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (38 years ago)</td></tr>
63 <tr>
63 <tr>
64 <th class="author">parents</th>
64 <th class="author">parents</th>
65 <td class="author"></td>
65 <td class="author"></td>
66 </tr>
66 </tr>
67 <tr>
67 <tr>
68 <th class="author">children</th>
68 <th class="author">children</th>
69 <td class="author"><a href="/rev/78e4ebad7cdf">78e4ebad7cdf</a></td>
69 <td class="author"><a href="/rev/78e4ebad7cdf">78e4ebad7cdf</a></td>
70 </tr>
70 </tr>
71 <tr>
71 <tr>
72 <th class="files">files</th>
72 <th class="files">files</th>
73 <td class="files"><a href="/file/0cd96de13884/a">a</a> <a href="/file/0cd96de13884/b">b</a> </td>
73 <td class="files"><a href="/file/0cd96de13884/a">a</a> <a href="/file/0cd96de13884/b">b</a> </td>
74 </tr>
74 </tr>
75 </table>
75 </table>
76
76
77 <div class="overflow">
77 <div class="overflow">
78 <table class="bigtable">
78 <div class="sourcefirst"> line diff</div>
79 <tr>
79
80 <th class="lineno">line</th>
80 <div class="source bottomline parity0"><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
81 <th class="source">diff</th>
81 </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ b/a Thu Jan 01 00:00:00 1970 +0000
82 </tr>
82 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -0,0 +1,1 @@
83 </table>
83 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="plusline">+a
84 <table class="bigtable parity0"><tr><td class="lineno"><a href="#l1.1" id="l1.1"> 1.1</a></td><td class="source minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
84 </span></div><div class="source bottomline parity1"><a href="#l2.1" id="l2.1"> 2.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
85 </td></tr><tr><td class="lineno"><a href="#l1.2" id="l1.2"> 1.2</a></td><td class="source plusline">+++ b/a Thu Jan 01 00:00:00 1970 +0000
85 </span><a href="#l2.2" id="l2.2"> 2.2</a> <span class="plusline">+++ b/b Thu Jan 01 00:00:00 1970 +0000
86 </td></tr><tr><td class="lineno"><a href="#l1.3" id="l1.3"> 1.3</a></td><td class="source atline">@@ -0,0 +1,1 @@
86 </span><a href="#l2.3" id="l2.3"> 2.3</a> <span class="atline">@@ -0,0 +1,1 @@
87 </td></tr><tr><td class="lineno"><a href="#l1.4" id="l1.4"> 1.4</a></td><td class="source plusline">+a
87 </span><a href="#l2.4" id="l2.4"> 2.4</a> <span class="plusline">+b
88 </td></tr></table><table class="bigtable parity1"><tr><td class="lineno"><a href="#l2.1" id="l2.1"> 2.1</a></td><td class="source minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
88 </span></div>
89 </td></tr><tr><td class="lineno"><a href="#l2.2" id="l2.2"> 2.2</a></td><td class="source plusline">+++ b/b Thu Jan 01 00:00:00 1970 +0000
90 </td></tr><tr><td class="lineno"><a href="#l2.3" id="l2.3"> 2.3</a></td><td class="source atline">@@ -0,0 +1,1 @@
91 </td></tr><tr><td class="lineno"><a href="#l2.4" id="l2.4"> 2.4</a></td><td class="source plusline">+b
92 </td></tr></table>
93 </div>
89 </div>
94
90
95 </div>
91 </div>
96 </div>
92 </div>
97
93
98
94
99 </body>
95 </body>
100 </html>
96 </html>
101
97
102 % diff removed file
98 % diff removed file
103 200 Script output follows
99 200 Script output follows
104
100
105 <!-- quirksmode -->
101 <!-- quirksmode -->
106 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
102 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
107 <html>
103 <html>
108 <head>
104 <head>
109 <link rel="icon" href="/static/hgicon.png" type="image/png">
105 <link rel="icon" href="/static/hgicon.png" type="image/png">
110 <meta name="robots" content="index, nofollow" />
106 <meta name="robots" content="index, nofollow" />
111 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
107 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
112
108
113 <title>test: a diff</title>
109 <title>test: a diff</title>
114 </head>
110 </head>
115 <body>
111 <body>
116
112
117 <div class="container">
113 <div class="container">
118 <div class="menu">
114 <div class="menu">
119 <div class="logo">
115 <div class="logo">
120 <a href="http://www.selenic.com/mercurial/">
116 <a href="http://www.selenic.com/mercurial/">
121 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
117 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
122 </div>
118 </div>
123 <ul>
119 <ul>
124 <li><a href="/shortlog/78e4ebad7cdf">log</a></li>
120 <li><a href="/shortlog/78e4ebad7cdf">log</a></li>
125 <li><a href="/graph/78e4ebad7cdf">graph</a></li>
121 <li><a href="/graph/78e4ebad7cdf">graph</a></li>
126 <li><a href="/tags">tags</a></li>
122 <li><a href="/tags">tags</a></li>
127 </ul>
123 </ul>
128 <ul>
124 <ul>
129 <li><a href="/rev/78e4ebad7cdf">changeset</a></li>
125 <li><a href="/rev/78e4ebad7cdf">changeset</a></li>
130 <li><a href="/file/78e4ebad7cdf">browse</a></li>
126 <li><a href="/file/78e4ebad7cdf">browse</a></li>
131 </ul>
127 </ul>
132 <ul>
128 <ul>
133 <li><a href="/file/78e4ebad7cdf/a">file</a></li>
129 <li><a href="/file/78e4ebad7cdf/a">file</a></li>
134 <li class="active">diff</li>
130 <li class="active">diff</li>
135 <li><a href="/annotate/78e4ebad7cdf/a">annotate</a></li>
131 <li><a href="/annotate/78e4ebad7cdf/a">annotate</a></li>
136 <li><a href="/log/78e4ebad7cdf/a">file log</a></li>
132 <li><a href="/log/78e4ebad7cdf/a">file log</a></li>
137 <li><a href="/raw-file/78e4ebad7cdf/a">raw</a></li>
133 <li><a href="/raw-file/78e4ebad7cdf/a">raw</a></li>
138 </ul>
134 </ul>
139 </div>
135 </div>
140
136
141 <div class="main">
137 <div class="main">
142 <h2><a href="/">test</a></h2>
138 <h2><a href="/">test</a></h2>
143 <h3>diff a @ 1:78e4ebad7cdf</h3>
139 <h3>diff a @ 1:78e4ebad7cdf</h3>
144
140
145 <form class="search" action="/log">
141 <form class="search" action="/log">
146
142
147 <p><input name="rev" id="search1" type="text" size="30"></p>
143 <p><input name="rev" id="search1" type="text" size="30"></p>
148 <span>find changesets by author, revision,
144 <span>find changesets by author, revision,
149 files, or words in the commit message</span>
145 files, or words in the commit message</span>
150 </form>
146 </form>
151
147
152 <div class="description">b</div>
148 <div class="description">b</div>
153
149
154 <table id="changesetEntry">
150 <table id="changesetEntry">
155 <tr>
151 <tr>
156 <th>author</th>
152 <th>author</th>
157 <td>&#116;&#101;&#115;&#116;</td>
153 <td>&#116;&#101;&#115;&#116;</td>
158 </tr>
154 </tr>
159 <tr>
155 <tr>
160 <th>date</th>
156 <th>date</th>
161 <td>Thu Jan 01 00:00:00 1970 +0000 (38 years ago)</td>
157 <td>Thu Jan 01 00:00:00 1970 +0000 (38 years ago)</td>
162 </tr>
158 </tr>
163 <tr>
159 <tr>
164 <th>parents</th>
160 <th>parents</th>
165 <td></td>
161 <td></td>
166 </tr>
162 </tr>
167 <tr>
163 <tr>
168 <th>children</th>
164 <th>children</th>
169 <td></td>
165 <td></td>
170 </tr>
166 </tr>
171
167
172 </table>
168 </table>
173
169
174 <div class="overflow">
170 <div class="overflow">
175 <table class="bigtable">
171 <div class="sourcefirst"> line diff</div>
176 <tr>
177 <th class="lineno">line</th>
178 <th class="source">diff</th>
179 </tr>
180 </table>
181
172
182 <table class="bigtable parity0"><tr><td class="lineno"><a href="#l1.1" id="l1.1"> 1.1</a></td><td class="source minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
173 <div class="source bottomline parity0"><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
183 </td></tr><tr><td class="lineno"><a href="#l1.2" id="l1.2"> 1.2</a></td><td class="source plusline">+++ b/a Thu Jan 01 00:00:00 1970 +0000
174 </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ b/a Thu Jan 01 00:00:00 1970 +0000
184 </td></tr><tr><td class="lineno"><a href="#l1.3" id="l1.3"> 1.3</a></td><td class="source atline">@@ -0,0 +1,1 @@
175 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -0,0 +1,1 @@
185 </td></tr><tr><td class="lineno"><a href="#l1.4" id="l1.4"> 1.4</a></td><td class="source plusline">+a
176 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="plusline">+a
186 </td></tr></table>
177 </span></div>
187 </div>
178 </div>
188 </div>
179 </div>
189 </div>
180 </div>
190
181
191
182
192
183
193 </body>
184 </body>
194 </html>
185 </html>
195
186
196 % set up hgweb with git diffs
187 % set up hgweb with git diffs
197 % revision
188 % revision
198 200 Script output follows
189 200 Script output follows
199
190
200 <!-- quirksmode -->
191 <!-- quirksmode -->
201 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
192 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
202 <html>
193 <html>
203 <head>
194 <head>
204 <link rel="icon" href="/static/hgicon.png" type="image/png">
195 <link rel="icon" href="/static/hgicon.png" type="image/png">
205 <meta name="robots" content="index, nofollow" />
196 <meta name="robots" content="index, nofollow" />
206 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
197 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
207
198
208 <title>test: 0cd96de13884</title>
199 <title>test: 0cd96de13884</title>
209 </head>
200 </head>
210 <body>
201 <body>
211 <div class="container">
202 <div class="container">
212 <div class="menu">
203 <div class="menu">
213 <div class="logo">
204 <div class="logo">
214 <a href="http://www.selenic.com/mercurial/">
205 <a href="http://www.selenic.com/mercurial/">
215 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
206 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
216 </div>
207 </div>
217 <ul>
208 <ul>
218 <li><a href="/shortlog/0cd96de13884">log</a></li>
209 <li><a href="/shortlog/0cd96de13884">log</a></li>
219 <li><a href="/graph/0cd96de13884">graph</a></li>
210 <li><a href="/graph/0cd96de13884">graph</a></li>
220 <li><a href="/tags">tags</a></li>
211 <li><a href="/tags">tags</a></li>
221 </ul>
212 </ul>
222 <ul>
213 <ul>
223 <li class="active">changeset</li>
214 <li class="active">changeset</li>
224 <li><a href="/raw-rev/0cd96de13884">raw</a></li>
215 <li><a href="/raw-rev/0cd96de13884">raw</a></li>
225 <li><a href="/file/0cd96de13884">browse</a></li>
216 <li><a href="/file/0cd96de13884">browse</a></li>
226 </ul>
217 </ul>
227 <ul>
218 <ul>
228
219
229 </ul>
220 </ul>
230 </div>
221 </div>
231
222
232 <div class="main">
223 <div class="main">
233
224
234 <h2><a href="/">test</a></h2>
225 <h2><a href="/">test</a></h2>
235 <h3>changeset 0:0cd96de13884 </h3>
226 <h3>changeset 0:0cd96de13884 </h3>
236
227
237 <form class="search" action="/log">
228 <form class="search" action="/log">
238
229
239 <p><input name="rev" id="search1" type="text" size="30"></p>
230 <p><input name="rev" id="search1" type="text" size="30"></p>
240 <span>find changesets by author, revision,
231 <span>find changesets by author, revision,
241 files, or words in the commit message</span>
232 files, or words in the commit message</span>
242 </form>
233 </form>
243
234
244 <div class="description">a</div>
235 <div class="description">a</div>
245
236
246 <table id="changesetEntry">
237 <table id="changesetEntry">
247 <tr>
238 <tr>
248 <th class="author">author</th>
239 <th class="author">author</th>
249 <td class="author">&#116;&#101;&#115;&#116;</td>
240 <td class="author">&#116;&#101;&#115;&#116;</td>
250 </tr>
241 </tr>
251 <tr>
242 <tr>
252 <th class="date">date</th>
243 <th class="date">date</th>
253 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (38 years ago)</td></tr>
244 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (38 years ago)</td></tr>
254 <tr>
245 <tr>
255 <th class="author">parents</th>
246 <th class="author">parents</th>
256 <td class="author"></td>
247 <td class="author"></td>
257 </tr>
248 </tr>
258 <tr>
249 <tr>
259 <th class="author">children</th>
250 <th class="author">children</th>
260 <td class="author"><a href="/rev/78e4ebad7cdf">78e4ebad7cdf</a></td>
251 <td class="author"><a href="/rev/78e4ebad7cdf">78e4ebad7cdf</a></td>
261 </tr>
252 </tr>
262 <tr>
253 <tr>
263 <th class="files">files</th>
254 <th class="files">files</th>
264 <td class="files"><a href="/file/0cd96de13884/a">a</a> <a href="/file/0cd96de13884/b">b</a> </td>
255 <td class="files"><a href="/file/0cd96de13884/a">a</a> <a href="/file/0cd96de13884/b">b</a> </td>
265 </tr>
256 </tr>
266 </table>
257 </table>
267
258
268 <div class="overflow">
259 <div class="overflow">
269 <table class="bigtable">
260 <div class="sourcefirst"> line diff</div>
270 <tr>
261
271 <th class="lineno">line</th>
262 <div class="source bottomline parity0"><a href="#l1.1" id="l1.1"> 1.1</a> new file mode 100644
272 <th class="source">diff</th>
263 <a href="#l1.2" id="l1.2"> 1.2</a> <span class="minusline">--- /dev/null
273 </tr>
264 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="plusline">+++ b/a
274 </table>
265 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="atline">@@ -0,0 +1,1 @@
275 <table class="bigtable parity0"><tr><td class="lineno"><a href="#l1.1" id="l1.1"> 1.1</a></td><td class="source">new file mode 100644
266 </span><a href="#l1.5" id="l1.5"> 1.5</a> <span class="plusline">+a
276 </td></tr><tr><td class="lineno"><a href="#l1.2" id="l1.2"> 1.2</a></td><td class="source minusline">--- /dev/null
267 </span></div><div class="source bottomline parity1"><a href="#l2.1" id="l2.1"> 2.1</a> new file mode 100644
277 </td></tr><tr><td class="lineno"><a href="#l1.3" id="l1.3"> 1.3</a></td><td class="source plusline">+++ b/a
268 <a href="#l2.2" id="l2.2"> 2.2</a> <span class="minusline">--- /dev/null
278 </td></tr><tr><td class="lineno"><a href="#l1.4" id="l1.4"> 1.4</a></td><td class="source atline">@@ -0,0 +1,1 @@
269 </span><a href="#l2.3" id="l2.3"> 2.3</a> <span class="plusline">+++ b/b
279 </td></tr><tr><td class="lineno"><a href="#l1.5" id="l1.5"> 1.5</a></td><td class="source plusline">+a
270 </span><a href="#l2.4" id="l2.4"> 2.4</a> <span class="atline">@@ -0,0 +1,1 @@
280 </td></tr></table><table class="bigtable parity1"><tr><td class="lineno"><a href="#l2.1" id="l2.1"> 2.1</a></td><td class="source">new file mode 100644
271 </span><a href="#l2.5" id="l2.5"> 2.5</a> <span class="plusline">+b
281 </td></tr><tr><td class="lineno"><a href="#l2.2" id="l2.2"> 2.2</a></td><td class="source minusline">--- /dev/null
272 </span></div>
282 </td></tr><tr><td class="lineno"><a href="#l2.3" id="l2.3"> 2.3</a></td><td class="source plusline">+++ b/b
283 </td></tr><tr><td class="lineno"><a href="#l2.4" id="l2.4"> 2.4</a></td><td class="source atline">@@ -0,0 +1,1 @@
284 </td></tr><tr><td class="lineno"><a href="#l2.5" id="l2.5"> 2.5</a></td><td class="source plusline">+b
285 </td></tr></table>
286 </div>
273 </div>
287
274
288 </div>
275 </div>
289 </div>
276 </div>
290
277
291
278
292 </body>
279 </body>
293 </html>
280 </html>
294
281
295 % diff removed file
282 % diff removed file
296 200 Script output follows
283 200 Script output follows
297
284
298 <!-- quirksmode -->
285 <!-- quirksmode -->
299 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
286 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
300 <html>
287 <html>
301 <head>
288 <head>
302 <link rel="icon" href="/static/hgicon.png" type="image/png">
289 <link rel="icon" href="/static/hgicon.png" type="image/png">
303 <meta name="robots" content="index, nofollow" />
290 <meta name="robots" content="index, nofollow" />
304 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
291 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
305
292
306 <title>test: a diff</title>
293 <title>test: a diff</title>
307 </head>
294 </head>
308 <body>
295 <body>
309
296
310 <div class="container">
297 <div class="container">
311 <div class="menu">
298 <div class="menu">
312 <div class="logo">
299 <div class="logo">
313 <a href="http://www.selenic.com/mercurial/">
300 <a href="http://www.selenic.com/mercurial/">
314 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
301 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
315 </div>
302 </div>
316 <ul>
303 <ul>
317 <li><a href="/shortlog/78e4ebad7cdf">log</a></li>
304 <li><a href="/shortlog/78e4ebad7cdf">log</a></li>
318 <li><a href="/graph/78e4ebad7cdf">graph</a></li>
305 <li><a href="/graph/78e4ebad7cdf">graph</a></li>
319 <li><a href="/tags">tags</a></li>
306 <li><a href="/tags">tags</a></li>
320 </ul>
307 </ul>
321 <ul>
308 <ul>
322 <li><a href="/rev/78e4ebad7cdf">changeset</a></li>
309 <li><a href="/rev/78e4ebad7cdf">changeset</a></li>
323 <li><a href="/file/78e4ebad7cdf">browse</a></li>
310 <li><a href="/file/78e4ebad7cdf">browse</a></li>
324 </ul>
311 </ul>
325 <ul>
312 <ul>
326 <li><a href="/file/78e4ebad7cdf/a">file</a></li>
313 <li><a href="/file/78e4ebad7cdf/a">file</a></li>
327 <li class="active">diff</li>
314 <li class="active">diff</li>
328 <li><a href="/annotate/78e4ebad7cdf/a">annotate</a></li>
315 <li><a href="/annotate/78e4ebad7cdf/a">annotate</a></li>
329 <li><a href="/log/78e4ebad7cdf/a">file log</a></li>
316 <li><a href="/log/78e4ebad7cdf/a">file log</a></li>
330 <li><a href="/raw-file/78e4ebad7cdf/a">raw</a></li>
317 <li><a href="/raw-file/78e4ebad7cdf/a">raw</a></li>
331 </ul>
318 </ul>
332 </div>
319 </div>
333
320
334 <div class="main">
321 <div class="main">
335 <h2><a href="/">test</a></h2>
322 <h2><a href="/">test</a></h2>
336 <h3>diff a @ 1:78e4ebad7cdf</h3>
323 <h3>diff a @ 1:78e4ebad7cdf</h3>
337
324
338 <form class="search" action="/log">
325 <form class="search" action="/log">
339
326
340 <p><input name="rev" id="search1" type="text" size="30"></p>
327 <p><input name="rev" id="search1" type="text" size="30"></p>
341 <span>find changesets by author, revision,
328 <span>find changesets by author, revision,
342 files, or words in the commit message</span>
329 files, or words in the commit message</span>
343 </form>
330 </form>
344
331
345 <div class="description">b</div>
332 <div class="description">b</div>
346
333
347 <table id="changesetEntry">
334 <table id="changesetEntry">
348 <tr>
335 <tr>
349 <th>author</th>
336 <th>author</th>
350 <td>&#116;&#101;&#115;&#116;</td>
337 <td>&#116;&#101;&#115;&#116;</td>
351 </tr>
338 </tr>
352 <tr>
339 <tr>
353 <th>date</th>
340 <th>date</th>
354 <td>Thu Jan 01 00:00:00 1970 +0000 (38 years ago)</td>
341 <td>Thu Jan 01 00:00:00 1970 +0000 (38 years ago)</td>
355 </tr>
342 </tr>
356 <tr>
343 <tr>
357 <th>parents</th>
344 <th>parents</th>
358 <td></td>
345 <td></td>
359 </tr>
346 </tr>
360 <tr>
347 <tr>
361 <th>children</th>
348 <th>children</th>
362 <td></td>
349 <td></td>
363 </tr>
350 </tr>
364
351
365 </table>
352 </table>
366
353
367 <div class="overflow">
354 <div class="overflow">
368 <table class="bigtable">
355 <div class="sourcefirst"> line diff</div>
369 <tr>
370 <th class="lineno">line</th>
371 <th class="source">diff</th>
372 </tr>
373 </table>
374
356
375 <table class="bigtable parity0"><tr><td class="lineno"><a href="#l1.1" id="l1.1"> 1.1</a></td><td class="source">new file mode 100755
357 <div class="source bottomline parity0"><a href="#l1.1" id="l1.1"> 1.1</a> new file mode 100755
376 </td></tr><tr><td class="lineno"><a href="#l1.2" id="l1.2"> 1.2</a></td><td class="source minusline">--- /dev/null
358 <a href="#l1.2" id="l1.2"> 1.2</a> <span class="minusline">--- /dev/null
377 </td></tr><tr><td class="lineno"><a href="#l1.3" id="l1.3"> 1.3</a></td><td class="source plusline">+++ b/a
359 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="plusline">+++ b/a
378 </td></tr><tr><td class="lineno"><a href="#l1.4" id="l1.4"> 1.4</a></td><td class="source atline">@@ -0,0 +1,1 @@
360 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="atline">@@ -0,0 +1,1 @@
379 </td></tr><tr><td class="lineno"><a href="#l1.5" id="l1.5"> 1.5</a></td><td class="source plusline">+a
361 </span><a href="#l1.5" id="l1.5"> 1.5</a> <span class="plusline">+a
380 </td></tr></table>
362 </span></div>
381 </div>
363 </div>
382 </div>
364 </div>
383 </div>
365 </div>
384
366
385
367
386
368
387 </body>
369 </body>
388 </html>
370 </html>
389
371
390 % errors
372 % errors
@@ -1,189 +1,180 b''
1 % setting up repo
1 % setting up repo
2 adding a
2 adding a
3 % set up hgweb
3 % set up hgweb
4 % revision
4 % revision
5 200 Script output follows
5 200 Script output follows
6
6
7 <!-- quirksmode -->
7 <!-- quirksmode -->
8 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
8 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
9 <html>
9 <html>
10 <head>
10 <head>
11 <link rel="icon" href="/static/hgicon.png" type="image/png">
11 <link rel="icon" href="/static/hgicon.png" type="image/png">
12 <meta name="robots" content="index, nofollow" />
12 <meta name="robots" content="index, nofollow" />
13 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
13 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
14
14
15 <title>test: c78f6c5cbea9</title>
15 <title>test: c78f6c5cbea9</title>
16 </head>
16 </head>
17 <body>
17 <body>
18 <div class="container">
18 <div class="container">
19 <div class="menu">
19 <div class="menu">
20 <div class="logo">
20 <div class="logo">
21 <a href="http://www.selenic.com/mercurial/">
21 <a href="http://www.selenic.com/mercurial/">
22 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
22 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
23 </div>
23 </div>
24 <ul>
24 <ul>
25 <li><a href="/shortlog/c78f6c5cbea9">log</a></li>
25 <li><a href="/shortlog/c78f6c5cbea9">log</a></li>
26 <li><a href="/graph/c78f6c5cbea9">graph</a></li>
26 <li><a href="/graph/c78f6c5cbea9">graph</a></li>
27 <li><a href="/tags">tags</a></li>
27 <li><a href="/tags">tags</a></li>
28 </ul>
28 </ul>
29 <ul>
29 <ul>
30 <li class="active">changeset</li>
30 <li class="active">changeset</li>
31 <li><a href="/raw-rev/c78f6c5cbea9">raw</a></li>
31 <li><a href="/raw-rev/c78f6c5cbea9">raw</a></li>
32 <li><a href="/file/c78f6c5cbea9">browse</a></li>
32 <li><a href="/file/c78f6c5cbea9">browse</a></li>
33 </ul>
33 </ul>
34 <ul>
34 <ul>
35
35
36 </ul>
36 </ul>
37 </div>
37 </div>
38
38
39 <div class="main">
39 <div class="main">
40
40
41 <h2><a href="/">test</a></h2>
41 <h2><a href="/">test</a></h2>
42 <h3>changeset 1:c78f6c5cbea9 <span class="tag">tip</span> </h3>
42 <h3>changeset 1:c78f6c5cbea9 <span class="tag">tip</span> </h3>
43
43
44 <form class="search" action="/log">
44 <form class="search" action="/log">
45
45
46 <p><input name="rev" id="search1" type="text" size="30"></p>
46 <p><input name="rev" id="search1" type="text" size="30"></p>
47 <span>find changesets by author, revision,
47 <span>find changesets by author, revision,
48 files, or words in the commit message</span>
48 files, or words in the commit message</span>
49 </form>
49 </form>
50
50
51 <div class="description">del</div>
51 <div class="description">del</div>
52
52
53 <table id="changesetEntry">
53 <table id="changesetEntry">
54 <tr>
54 <tr>
55 <th class="author">author</th>
55 <th class="author">author</th>
56 <td class="author">&#116;&#101;&#115;&#116;</td>
56 <td class="author">&#116;&#101;&#115;&#116;</td>
57 </tr>
57 </tr>
58 <tr>
58 <tr>
59 <th class="date">date</th>
59 <th class="date">date</th>
60 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (38 years ago)</td></tr>
60 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (38 years ago)</td></tr>
61 <tr>
61 <tr>
62 <th class="author">parents</th>
62 <th class="author">parents</th>
63 <td class="author"><a href="/rev/cb9a9f314b8b">cb9a9f314b8b</a> </td>
63 <td class="author"><a href="/rev/cb9a9f314b8b">cb9a9f314b8b</a> </td>
64 </tr>
64 </tr>
65 <tr>
65 <tr>
66 <th class="author">children</th>
66 <th class="author">children</th>
67 <td class="author"></td>
67 <td class="author"></td>
68 </tr>
68 </tr>
69 <tr>
69 <tr>
70 <th class="files">files</th>
70 <th class="files">files</th>
71 <td class="files">a </td>
71 <td class="files">a </td>
72 </tr>
72 </tr>
73 </table>
73 </table>
74
74
75 <div class="overflow">
75 <div class="overflow">
76 <table class="bigtable">
76 <div class="sourcefirst"> line diff</div>
77 <tr>
77
78 <th class="lineno">line</th>
78 <div class="source bottomline parity0"><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- a/a Thu Jan 01 00:00:00 1970 +0000
79 <th class="source">diff</th>
79 </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
80 </tr>
80 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -1,1 +0,0 @@
81 </table>
81 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="minusline">-a
82 <table class="bigtable parity0"><tr><td class="lineno"><a href="#l1.1" id="l1.1"> 1.1</a></td><td class="source minusline">--- a/a Thu Jan 01 00:00:00 1970 +0000
82 </span></div>
83 </td></tr><tr><td class="lineno"><a href="#l1.2" id="l1.2"> 1.2</a></td><td class="source plusline">+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
84 </td></tr><tr><td class="lineno"><a href="#l1.3" id="l1.3"> 1.3</a></td><td class="source atline">@@ -1,1 +0,0 @@
85 </td></tr><tr><td class="lineno"><a href="#l1.4" id="l1.4"> 1.4</a></td><td class="source minusline">-a
86 </td></tr></table>
87 </div>
83 </div>
88
84
89 </div>
85 </div>
90 </div>
86 </div>
91
87
92
88
93 </body>
89 </body>
94 </html>
90 </html>
95
91
96 % diff removed file
92 % diff removed file
97 200 Script output follows
93 200 Script output follows
98
94
99 <!-- quirksmode -->
95 <!-- quirksmode -->
100 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
96 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
101 <html>
97 <html>
102 <head>
98 <head>
103 <link rel="icon" href="/static/hgicon.png" type="image/png">
99 <link rel="icon" href="/static/hgicon.png" type="image/png">
104 <meta name="robots" content="index, nofollow" />
100 <meta name="robots" content="index, nofollow" />
105 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
101 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
106
102
107 <title>test: a diff</title>
103 <title>test: a diff</title>
108 </head>
104 </head>
109 <body>
105 <body>
110
106
111 <div class="container">
107 <div class="container">
112 <div class="menu">
108 <div class="menu">
113 <div class="logo">
109 <div class="logo">
114 <a href="http://www.selenic.com/mercurial/">
110 <a href="http://www.selenic.com/mercurial/">
115 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
111 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
116 </div>
112 </div>
117 <ul>
113 <ul>
118 <li><a href="/shortlog/c78f6c5cbea9">log</a></li>
114 <li><a href="/shortlog/c78f6c5cbea9">log</a></li>
119 <li><a href="/graph/c78f6c5cbea9">graph</a></li>
115 <li><a href="/graph/c78f6c5cbea9">graph</a></li>
120 <li><a href="/tags">tags</a></li>
116 <li><a href="/tags">tags</a></li>
121 </ul>
117 </ul>
122 <ul>
118 <ul>
123 <li><a href="/rev/c78f6c5cbea9">changeset</a></li>
119 <li><a href="/rev/c78f6c5cbea9">changeset</a></li>
124 <li><a href="/file/c78f6c5cbea9">browse</a></li>
120 <li><a href="/file/c78f6c5cbea9">browse</a></li>
125 </ul>
121 </ul>
126 <ul>
122 <ul>
127 <li><a href="/file/c78f6c5cbea9/a">file</a></li>
123 <li><a href="/file/c78f6c5cbea9/a">file</a></li>
128 <li class="active">diff</li>
124 <li class="active">diff</li>
129 <li><a href="/annotate/c78f6c5cbea9/a">annotate</a></li>
125 <li><a href="/annotate/c78f6c5cbea9/a">annotate</a></li>
130 <li><a href="/log/c78f6c5cbea9/a">file log</a></li>
126 <li><a href="/log/c78f6c5cbea9/a">file log</a></li>
131 <li><a href="/raw-file/c78f6c5cbea9/a">raw</a></li>
127 <li><a href="/raw-file/c78f6c5cbea9/a">raw</a></li>
132 </ul>
128 </ul>
133 </div>
129 </div>
134
130
135 <div class="main">
131 <div class="main">
136 <h2><a href="/">test</a></h2>
132 <h2><a href="/">test</a></h2>
137 <h3>diff a @ 1:c78f6c5cbea9</h3>
133 <h3>diff a @ 1:c78f6c5cbea9</h3>
138
134
139 <form class="search" action="/log">
135 <form class="search" action="/log">
140
136
141 <p><input name="rev" id="search1" type="text" size="30"></p>
137 <p><input name="rev" id="search1" type="text" size="30"></p>
142 <span>find changesets by author, revision,
138 <span>find changesets by author, revision,
143 files, or words in the commit message</span>
139 files, or words in the commit message</span>
144 </form>
140 </form>
145
141
146 <div class="description">del</div>
142 <div class="description">del</div>
147
143
148 <table id="changesetEntry">
144 <table id="changesetEntry">
149 <tr>
145 <tr>
150 <th>author</th>
146 <th>author</th>
151 <td>&#116;&#101;&#115;&#116;</td>
147 <td>&#116;&#101;&#115;&#116;</td>
152 </tr>
148 </tr>
153 <tr>
149 <tr>
154 <th>date</th>
150 <th>date</th>
155 <td>Thu Jan 01 00:00:00 1970 +0000 (38 years ago)</td>
151 <td>Thu Jan 01 00:00:00 1970 +0000 (38 years ago)</td>
156 </tr>
152 </tr>
157 <tr>
153 <tr>
158 <th>parents</th>
154 <th>parents</th>
159 <td><a href="/file/cb9a9f314b8b/a">cb9a9f314b8b</a> </td>
155 <td><a href="/file/cb9a9f314b8b/a">cb9a9f314b8b</a> </td>
160 </tr>
156 </tr>
161 <tr>
157 <tr>
162 <th>children</th>
158 <th>children</th>
163 <td></td>
159 <td></td>
164 </tr>
160 </tr>
165
161
166 </table>
162 </table>
167
163
168 <div class="overflow">
164 <div class="overflow">
169 <table class="bigtable">
165 <div class="sourcefirst"> line diff</div>
170 <tr>
171 <th class="lineno">line</th>
172 <th class="source">diff</th>
173 </tr>
174 </table>
175
166
176 <table class="bigtable parity0"><tr><td class="lineno"><a href="#l1.1" id="l1.1"> 1.1</a></td><td class="source minusline">--- a/a Thu Jan 01 00:00:00 1970 +0000
167 <div class="source bottomline parity0"><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- a/a Thu Jan 01 00:00:00 1970 +0000
177 </td></tr><tr><td class="lineno"><a href="#l1.2" id="l1.2"> 1.2</a></td><td class="source plusline">+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
168 </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
178 </td></tr><tr><td class="lineno"><a href="#l1.3" id="l1.3"> 1.3</a></td><td class="source atline">@@ -1,1 +0,0 @@
169 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -1,1 +0,0 @@
179 </td></tr><tr><td class="lineno"><a href="#l1.4" id="l1.4"> 1.4</a></td><td class="source minusline">-a
170 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="minusline">-a
180 </td></tr></table>
171 </span></div>
181 </div>
172 </div>
182 </div>
173 </div>
183 </div>
174 </div>
184
175
185
176
186
177
187 </body>
178 </body>
188 </html>
179 </html>
189
180
@@ -1,294 +1,285 b''
1 adding get-with-headers.py
1 adding get-with-headers.py
2 adding isolatin
2 adding isolatin
3 % hg serve
3 % hg serve
4 % hgweb filerevision, html
4 % hgweb filerevision, html
5 200 Script output follows
5 200 Script output follows
6
6
7 <!-- quirksmode -->
7 <!-- quirksmode -->
8 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
8 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
9 <html>
9 <html>
10 <head>
10 <head>
11 <link rel="icon" href="/static/hgicon.png" type="image/png">
11 <link rel="icon" href="/static/hgicon.png" type="image/png">
12 <meta name="robots" content="index, nofollow" />
12 <meta name="robots" content="index, nofollow" />
13 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
13 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
14
14
15 <link rel="stylesheet" href="/highlightcss" type="text/css" />
15 <link rel="stylesheet" href="/highlightcss" type="text/css" />
16 <title>test: 7697c52ca9b0 get-with-headers.py</title>
16 <title>test: 7697c52ca9b0 get-with-headers.py</title>
17 </head>
17 </head>
18 <body>
18 <body>
19
19
20 <div class="container">
20 <div class="container">
21 <div class="menu">
21 <div class="menu">
22 <div class="logo">
22 <div class="logo">
23 <a href="http://www.selenic.com/mercurial/">
23 <a href="http://www.selenic.com/mercurial/">
24 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
24 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
25 </div>
25 </div>
26 <ul>
26 <ul>
27 <li><a href="/shortlog/7697c52ca9b0">log</a></li>
27 <li><a href="/shortlog/7697c52ca9b0">log</a></li>
28 <li><a href="/graph/7697c52ca9b0">graph</a></li>
28 <li><a href="/graph/7697c52ca9b0">graph</a></li>
29 <li><a href="/tags">tags</a></li>
29 <li><a href="/tags">tags</a></li>
30 </ul>
30 </ul>
31 <ul>
31 <ul>
32 <li><a href="/rev/7697c52ca9b0">changeset</a></li>
32 <li><a href="/rev/7697c52ca9b0">changeset</a></li>
33 <li><a href="/file/7697c52ca9b0/">browse</a></li>
33 <li><a href="/file/7697c52ca9b0/">browse</a></li>
34 </ul>
34 </ul>
35 <ul>
35 <ul>
36 <li class="active">file</li>
36 <li class="active">file</li>
37 <li><a href="/diff/7697c52ca9b0/get-with-headers.py">diff</a></li>
37 <li><a href="/diff/7697c52ca9b0/get-with-headers.py">diff</a></li>
38 <li><a href="/annotate/7697c52ca9b0/get-with-headers.py">annotate</a></li>
38 <li><a href="/annotate/7697c52ca9b0/get-with-headers.py">annotate</a></li>
39 <li><a href="/log/7697c52ca9b0/get-with-headers.py">file log</a></li>
39 <li><a href="/log/7697c52ca9b0/get-with-headers.py">file log</a></li>
40 <li><a href="/raw-file/7697c52ca9b0/get-with-headers.py">raw</a></li>
40 <li><a href="/raw-file/7697c52ca9b0/get-with-headers.py">raw</a></li>
41 </ul>
41 </ul>
42 </div>
42 </div>
43
43
44 <div class="main">
44 <div class="main">
45 <h2><a href="/">test</a></h2>
45 <h2><a href="/">test</a></h2>
46 <h3>view get-with-headers.py @ 0:7697c52ca9b0</h3>
46 <h3>view get-with-headers.py @ 0:7697c52ca9b0</h3>
47
47
48 <form class="search" action="/log">
48 <form class="search" action="/log">
49
49
50 <p><input name="rev" id="search1" type="text" size="30"></p>
50 <p><input name="rev" id="search1" type="text" size="30"></p>
51 <span>find changesets by author, revision,
51 <span>find changesets by author, revision,
52 files, or words in the commit message</span>
52 files, or words in the commit message</span>
53 </form>
53 </form>
54
54
55 <div class="description">a</div>
55 <div class="description">a</div>
56
56
57 <table id="changesetEntry">
57 <table id="changesetEntry">
58 <tr>
58 <tr>
59 <th class="author">author</th>
59 <th class="author">author</th>
60 <td class="author">&#116;&#101;&#115;&#116;</td>
60 <td class="author">&#116;&#101;&#115;&#116;</td>
61 </tr>
61 </tr>
62 <tr>
62 <tr>
63 <th class="date">date</th>
63 <th class="date">date</th>
64 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (long ago)</td>
64 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (long ago)</td>
65 </tr>
65 </tr>
66 <tr>
66 <tr>
67 <th class="author">parents</th>
67 <th class="author">parents</th>
68 <td class="author"></td>
68 <td class="author"></td>
69 </tr>
69 </tr>
70 <tr>
70 <tr>
71 <th class="author">children</th>
71 <th class="author">children</th>
72 <td class="author"></td>
72 <td class="author"></td>
73 </tr>
73 </tr>
74
74
75 </table>
75 </table>
76
76
77 <div class="overflow">
77 <div class="overflow">
78 <table class="bigtable">
78 <div class="sourcefirst"> line source</div>
79 <tr>
79 <div class="parity0 source"><a href="#l1" id="l1"> 1</a> <span class="c">#!/usr/bin/env python</span></div><div class="parity1 source"><a href="#l2" id="l2"> 2</a> </div><div class="parity0 source"><a href="#l3" id="l3"> 3</a> <span class="n">__doc__</span> <span class="o">=</span> <span class="s">&quot;&quot;&quot;This does HTTP get requests given a host:port and path and returns</span></div><div class="parity1 source"><a href="#l4" id="l4"> 4</a> <span class="s">a subset of the headers plus the body of the result.&quot;&quot;&quot;</span></div><div class="parity0 source"><a href="#l5" id="l5"> 5</a> </div><div class="parity1 source"><a href="#l6" id="l6"> 6</a> <span class="kn">import</span> <span class="nn">httplib</span><span class="o">,</span> <span class="nn">sys</span></div><div class="parity0 source"><a href="#l7" id="l7"> 7</a> </div><div class="parity1 source"><a href="#l8" id="l8"> 8</a> <span class="kn">try</span><span class="p">:</span></div><div class="parity0 source"><a href="#l9" id="l9"> 9</a> <span class="kn">import</span> <span class="nn">msvcrt</span><span class="o">,</span> <span class="nn">os</span></div><div class="parity1 source"><a href="#l10" id="l10"> 10</a> <span class="n">msvcrt</span><span class="o">.</span><span class="n">setmode</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">fileno</span><span class="p">(),</span> <span class="n">os</span><span class="o">.</span><span class="n">O_BINARY</span><span class="p">)</span></div><div class="parity0 source"><a href="#l11" id="l11"> 11</a> <span class="n">msvcrt</span><span class="o">.</span><span class="n">setmode</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stderr</span><span class="o">.</span><span class="n">fileno</span><span class="p">(),</span> <span class="n">os</span><span class="o">.</span><span class="n">O_BINARY</span><span class="p">)</span></div><div class="parity1 source"><a href="#l12" id="l12"> 12</a> <span class="kn">except</span> <span class="ne">ImportError</span><span class="p">:</span></div><div class="parity0 source"><a href="#l13" id="l13"> 13</a> <span class="kn">pass</span></div><div class="parity1 source"><a href="#l14" id="l14"> 14</a> </div><div class="parity0 source"><a href="#l15" id="l15"> 15</a> <span class="n">headers</span> <span class="o">=</span> <span class="p">[</span><span class="n">h</span><span class="o">.</span><span class="n">lower</span><span class="p">()</span> <span class="kn">for</span> <span class="n">h</span> <span class="ow">in</span> <span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">3</span><span class="p">:]]</span></div><div class="parity1 source"><a href="#l16" id="l16"> 16</a> <span class="n">conn</span> <span class="o">=</span> <span class="n">httplib</span><span class="o">.</span><span class="n">HTTPConnection</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">1</span><span class="p">])</span></div><div class="parity0 source"><a href="#l17" id="l17"> 17</a> <span class="n">conn</span><span class="o">.</span><span class="n">request</span><span class="p">(</span><span class="s">&quot;GET&quot;</span><span class="p">,</span> <span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">2</span><span class="p">])</span></div><div class="parity1 source"><a href="#l18" id="l18"> 18</a> <span class="n">response</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">getresponse</span><span class="p">()</span></div><div class="parity0 source"><a href="#l19" id="l19"> 19</a> <span class="kn">print</span> <span class="n">response</span><span class="o">.</span><span class="n">status</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">reason</span></div><div class="parity1 source"><a href="#l20" id="l20"> 20</a> <span class="kn">for</span> <span class="n">h</span> <span class="ow">in</span> <span class="n">headers</span><span class="p">:</span></div><div class="parity0 source"><a href="#l21" id="l21"> 21</a> <span class="kn">if</span> <span class="n">response</span><span class="o">.</span><span class="n">getheader</span><span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span></div><div class="parity1 source"><a href="#l22" id="l22"> 22</a> <span class="kn">print</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s">: </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">getheader</span><span class="p">(</span><span class="n">h</span><span class="p">))</span></div><div class="parity0 source"><a href="#l23" id="l23"> 23</a> <span class="kn">print</span></div><div class="parity1 source"><a href="#l24" id="l24"> 24</a> <span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">response</span><span class="o">.</span><span class="n">read</span><span class="p">())</span></div><div class="parity0 source"><a href="#l25" id="l25"> 25</a> </div><div class="parity1 source"><a href="#l26" id="l26"> 26</a> <span class="kn">if</span> <span class="mf">200</span> <span class="o">&lt;=</span> <span class="n">response</span><span class="o">.</span><span class="n">status</span> <span class="o">&lt;=</span> <span class="mf">299</span><span class="p">:</span></div><div class="parity0 source"><a href="#l27" id="l27"> 27</a> <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mf">0</span><span class="p">)</span></div><div class="parity1 source"><a href="#l28" id="l28"> 28</a> <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mf">1</span><span class="p">)</span></div>
80 <th class="lineno">line</th>
80 <div class="sourcelast"></div>
81 <th class="source">source</th>
82 </tr>
83 <tr class="parity0"><td class="lineno"><a href="#l1" id="l1"> 1</a></td><td class="source"><span class="c">#!/usr/bin/env python</span></td></tr><tr class="parity1"><td class="lineno"><a href="#l2" id="l2"> 2</a></td><td class="source"></td></tr><tr class="parity0"><td class="lineno"><a href="#l3" id="l3"> 3</a></td><td class="source"><span class="n">__doc__</span> <span class="o">=</span> <span class="s">&quot;&quot;&quot;This does HTTP get requests given a host:port and path and returns</span></td></tr><tr class="parity1"><td class="lineno"><a href="#l4" id="l4"> 4</a></td><td class="source"><span class="s">a subset of the headers plus the body of the result.&quot;&quot;&quot;</span></td></tr><tr class="parity0"><td class="lineno"><a href="#l5" id="l5"> 5</a></td><td class="source"></td></tr><tr class="parity1"><td class="lineno"><a href="#l6" id="l6"> 6</a></td><td class="source"><span class="kn">import</span> <span class="nn">httplib</span><span class="o">,</span> <span class="nn">sys</span></td></tr><tr class="parity0"><td class="lineno"><a href="#l7" id="l7"> 7</a></td><td class="source"></td></tr><tr class="parity1"><td class="lineno"><a href="#l8" id="l8"> 8</a></td><td class="source"><span class="kn">try</span><span class="p">:</span></td></tr><tr class="parity0"><td class="lineno"><a href="#l9" id="l9"> 9</a></td><td class="source"> <span class="kn">import</span> <span class="nn">msvcrt</span><span class="o">,</span> <span class="nn">os</span></td></tr><tr class="parity1"><td class="lineno"><a href="#l10" id="l10"> 10</a></td><td class="source"> <span class="n">msvcrt</span><span class="o">.</span><span class="n">setmode</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">fileno</span><span class="p">(),</span> <span class="n">os</span><span class="o">.</span><span class="n">O_BINARY</span><span class="p">)</span></td></tr><tr class="parity0"><td class="lineno"><a href="#l11" id="l11"> 11</a></td><td class="source"> <span class="n">msvcrt</span><span class="o">.</span><span class="n">setmode</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stderr</span><span class="o">.</span><span class="n">fileno</span><span class="p">(),</span> <span class="n">os</span><span class="o">.</span><span class="n">O_BINARY</span><span class="p">)</span></td></tr><tr class="parity1"><td class="lineno"><a href="#l12" id="l12"> 12</a></td><td class="source"><span class="kn">except</span> <span class="ne">ImportError</span><span class="p">:</span></td></tr><tr class="parity0"><td class="lineno"><a href="#l13" id="l13"> 13</a></td><td class="source"> <span class="kn">pass</span></td></tr><tr class="parity1"><td class="lineno"><a href="#l14" id="l14"> 14</a></td><td class="source"></td></tr><tr class="parity0"><td class="lineno"><a href="#l15" id="l15"> 15</a></td><td class="source"><span class="n">headers</span> <span class="o">=</span> <span class="p">[</span><span class="n">h</span><span class="o">.</span><span class="n">lower</span><span class="p">()</span> <span class="kn">for</span> <span class="n">h</span> <span class="ow">in</span> <span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">3</span><span class="p">:]]</span></td></tr><tr class="parity1"><td class="lineno"><a href="#l16" id="l16"> 16</a></td><td class="source"><span class="n">conn</span> <span class="o">=</span> <span class="n">httplib</span><span class="o">.</span><span class="n">HTTPConnection</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">1</span><span class="p">])</span></td></tr><tr class="parity0"><td class="lineno"><a href="#l17" id="l17"> 17</a></td><td class="source"><span class="n">conn</span><span class="o">.</span><span class="n">request</span><span class="p">(</span><span class="s">&quot;GET&quot;</span><span class="p">,</span> <span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">2</span><span class="p">])</span></td></tr><tr class="parity1"><td class="lineno"><a href="#l18" id="l18"> 18</a></td><td class="source"><span class="n">response</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">getresponse</span><span class="p">()</span></td></tr><tr class="parity0"><td class="lineno"><a href="#l19" id="l19"> 19</a></td><td class="source"><span class="kn">print</span> <span class="n">response</span><span class="o">.</span><span class="n">status</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">reason</span></td></tr><tr class="parity1"><td class="lineno"><a href="#l20" id="l20"> 20</a></td><td class="source"><span class="kn">for</span> <span class="n">h</span> <span class="ow">in</span> <span class="n">headers</span><span class="p">:</span></td></tr><tr class="parity0"><td class="lineno"><a href="#l21" id="l21"> 21</a></td><td class="source"> <span class="kn">if</span> <span class="n">response</span><span class="o">.</span><span class="n">getheader</span><span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span></td></tr><tr class="parity1"><td class="lineno"><a href="#l22" id="l22"> 22</a></td><td class="source"> <span class="kn">print</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s">: </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">getheader</span><span class="p">(</span><span class="n">h</span><span class="p">))</span></td></tr><tr class="parity0"><td class="lineno"><a href="#l23" id="l23"> 23</a></td><td class="source"><span class="kn">print</span></td></tr><tr class="parity1"><td class="lineno"><a href="#l24" id="l24"> 24</a></td><td class="source"><span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">response</span><span class="o">.</span><span class="n">read</span><span class="p">())</span></td></tr><tr class="parity0"><td class="lineno"><a href="#l25" id="l25"> 25</a></td><td class="source"></td></tr><tr class="parity1"><td class="lineno"><a href="#l26" id="l26"> 26</a></td><td class="source"><span class="kn">if</span> <span class="mf">200</span> <span class="o">&lt;=</span> <span class="n">response</span><span class="o">.</span><span class="n">status</span> <span class="o">&lt;=</span> <span class="mf">299</span><span class="p">:</span></td></tr><tr class="parity0"><td class="lineno"><a href="#l27" id="l27"> 27</a></td><td class="source"> <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mf">0</span><span class="p">)</span></td></tr><tr class="parity1"><td class="lineno"><a href="#l28" id="l28"> 28</a></td><td class="source"><span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mf">1</span><span class="p">)</span></td></tr>
84 </table>
85 </div>
81 </div>
86 </div>
82 </div>
87 </div>
83 </div>
88
84
89
85
90
86
91 </body>
87 </body>
92 </html>
88 </html>
93
89
94 % hgweb filerevision, html
90 % hgweb filerevision, html
95 200 Script output follows
91 200 Script output follows
96
92
97 <!-- quirksmode -->
93 <!-- quirksmode -->
98 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
94 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
99 <html>
95 <html>
100 <head>
96 <head>
101 <link rel="icon" href="/static/hgicon.png" type="image/png">
97 <link rel="icon" href="/static/hgicon.png" type="image/png">
102 <meta name="robots" content="index, nofollow" />
98 <meta name="robots" content="index, nofollow" />
103 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
99 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
104
100
105 <link rel="stylesheet" href="/highlightcss" type="text/css" />
101 <link rel="stylesheet" href="/highlightcss" type="text/css" />
106 <title>test: 7697c52ca9b0 isolatin</title>
102 <title>test: 7697c52ca9b0 isolatin</title>
107 </head>
103 </head>
108 <body>
104 <body>
109
105
110 <div class="container">
106 <div class="container">
111 <div class="menu">
107 <div class="menu">
112 <div class="logo">
108 <div class="logo">
113 <a href="http://www.selenic.com/mercurial/">
109 <a href="http://www.selenic.com/mercurial/">
114 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
110 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
115 </div>
111 </div>
116 <ul>
112 <ul>
117 <li><a href="/shortlog/7697c52ca9b0">log</a></li>
113 <li><a href="/shortlog/7697c52ca9b0">log</a></li>
118 <li><a href="/graph/7697c52ca9b0">graph</a></li>
114 <li><a href="/graph/7697c52ca9b0">graph</a></li>
119 <li><a href="/tags">tags</a></li>
115 <li><a href="/tags">tags</a></li>
120 </ul>
116 </ul>
121 <ul>
117 <ul>
122 <li><a href="/rev/7697c52ca9b0">changeset</a></li>
118 <li><a href="/rev/7697c52ca9b0">changeset</a></li>
123 <li><a href="/file/7697c52ca9b0/">browse</a></li>
119 <li><a href="/file/7697c52ca9b0/">browse</a></li>
124 </ul>
120 </ul>
125 <ul>
121 <ul>
126 <li class="active">file</li>
122 <li class="active">file</li>
127 <li><a href="/diff/7697c52ca9b0/isolatin">diff</a></li>
123 <li><a href="/diff/7697c52ca9b0/isolatin">diff</a></li>
128 <li><a href="/annotate/7697c52ca9b0/isolatin">annotate</a></li>
124 <li><a href="/annotate/7697c52ca9b0/isolatin">annotate</a></li>
129 <li><a href="/log/7697c52ca9b0/isolatin">file log</a></li>
125 <li><a href="/log/7697c52ca9b0/isolatin">file log</a></li>
130 <li><a href="/raw-file/7697c52ca9b0/isolatin">raw</a></li>
126 <li><a href="/raw-file/7697c52ca9b0/isolatin">raw</a></li>
131 </ul>
127 </ul>
132 </div>
128 </div>
133
129
134 <div class="main">
130 <div class="main">
135 <h2><a href="/">test</a></h2>
131 <h2><a href="/">test</a></h2>
136 <h3>view isolatin @ 0:7697c52ca9b0</h3>
132 <h3>view isolatin @ 0:7697c52ca9b0</h3>
137
133
138 <form class="search" action="/log">
134 <form class="search" action="/log">
139
135
140 <p><input name="rev" id="search1" type="text" size="30"></p>
136 <p><input name="rev" id="search1" type="text" size="30"></p>
141 <span>find changesets by author, revision,
137 <span>find changesets by author, revision,
142 files, or words in the commit message</span>
138 files, or words in the commit message</span>
143 </form>
139 </form>
144
140
145 <div class="description">a</div>
141 <div class="description">a</div>
146
142
147 <table id="changesetEntry">
143 <table id="changesetEntry">
148 <tr>
144 <tr>
149 <th class="author">author</th>
145 <th class="author">author</th>
150 <td class="author">&#116;&#101;&#115;&#116;</td>
146 <td class="author">&#116;&#101;&#115;&#116;</td>
151 </tr>
147 </tr>
152 <tr>
148 <tr>
153 <th class="date">date</th>
149 <th class="date">date</th>
154 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (long ago)</td>
150 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (long ago)</td>
155 </tr>
151 </tr>
156 <tr>
152 <tr>
157 <th class="author">parents</th>
153 <th class="author">parents</th>
158 <td class="author"></td>
154 <td class="author"></td>
159 </tr>
155 </tr>
160 <tr>
156 <tr>
161 <th class="author">children</th>
157 <th class="author">children</th>
162 <td class="author"></td>
158 <td class="author"></td>
163 </tr>
159 </tr>
164
160
165 </table>
161 </table>
166
162
167 <div class="overflow">
163 <div class="overflow">
168 <table class="bigtable">
164 <div class="sourcefirst"> line source</div>
169 <tr>
165 <div class="parity0 source"><a href="#l1" id="l1"> 1</a> h?bsch</div>
170 <th class="lineno">line</th>
166 <div class="sourcelast"></div>
171 <th class="source">source</th>
172 </tr>
173 <tr class="parity0"><td class="lineno"><a href="#l1" id="l1"> 1</a></td><td class="source">h?bsch</td></tr>
174 </table>
175 </div>
167 </div>
176 </div>
168 </div>
177 </div>
169 </div>
178
170
179
171
180
172
181 </body>
173 </body>
182 </html>
174 </html>
183
175
184 % hgweb fileannotate, html
176 % hgweb fileannotate, html
185 200 Script output follows
177 200 Script output follows
186
178
187 <!-- quirksmode -->
179 <!-- quirksmode -->
188 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
180 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
189 <html>
181 <html>
190 <head>
182 <head>
191 <link rel="icon" href="/static/hgicon.png" type="image/png">
183 <link rel="icon" href="/static/hgicon.png" type="image/png">
192 <meta name="robots" content="index, nofollow" />
184 <meta name="robots" content="index, nofollow" />
193 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
185 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
194
186
195 <link rel="stylesheet" href="/highlightcss" type="text/css" />
187 <link rel="stylesheet" href="/highlightcss" type="text/css" />
196 <title>test: get-with-headers.py annotate</title>
188 <title>test: get-with-headers.py annotate</title>
197 </head>
189 </head>
198 <body>
190 <body>
199
191
200 <div class="container">
192 <div class="container">
201 <div class="menu">
193 <div class="menu">
202 <div class="logo">
194 <div class="logo">
203 <a href="http://www.selenic.com/mercurial/">
195 <a href="http://www.selenic.com/mercurial/">
204 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
196 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
205 </div>
197 </div>
206 <ul>
198 <ul>
207 <li><a href="/shortlog/7697c52ca9b0">log</a></li>
199 <li><a href="/shortlog/7697c52ca9b0">log</a></li>
208 <li><a href="/graph/7697c52ca9b0">graph</a></li>
200 <li><a href="/graph/7697c52ca9b0">graph</a></li>
209 <li><a href="/tags">tags</a></li>
201 <li><a href="/tags">tags</a></li>
210 </ul>
202 </ul>
211
203
212 <ul>
204 <ul>
213 <li><a href="/rev/7697c52ca9b0">changeset</a></li>
205 <li><a href="/rev/7697c52ca9b0">changeset</a></li>
214 <li><a href="/file/7697c52ca9b0/">browse</a></li>
206 <li><a href="/file/7697c52ca9b0/">browse</a></li>
215 </ul>
207 </ul>
216 <ul>
208 <ul>
217 <li><a href="/file/7697c52ca9b0/get-with-headers.py">file</a></li>
209 <li><a href="/file/7697c52ca9b0/get-with-headers.py">file</a></li>
218 <li><a href="/diff/7697c52ca9b0/get-with-headers.py">diff</a></li>
210 <li><a href="/diff/7697c52ca9b0/get-with-headers.py">diff</a></li>
219 <li class="active">annotate</li>
211 <li class="active">annotate</li>
220 <li><a href="/log/7697c52ca9b0/get-with-headers.py">file log</a></li>
212 <li><a href="/log/7697c52ca9b0/get-with-headers.py">file log</a></li>
221 <li><a href="/raw-annotate/7697c52ca9b0/get-with-headers.py">raw</a></li>
213 <li><a href="/raw-annotate/7697c52ca9b0/get-with-headers.py">raw</a></li>
222 </ul>
214 </ul>
223 </div>
215 </div>
224
216
225 <div class="main">
217 <div class="main">
226 <h2><a href="/">test</a></h2>
218 <h2><a href="/">test</a></h2>
227 <h3>annotate get-with-headers.py @ 0:7697c52ca9b0</h3>
219 <h3>annotate get-with-headers.py @ 0:7697c52ca9b0</h3>
228
220
229 <form class="search" action="/log">
221 <form class="search" action="/log">
230
222
231 <p><input name="rev" id="search1" type="text" size="30"></p>
223 <p><input name="rev" id="search1" type="text" size="30"></p>
232 <span>find changesets by author, revision,
224 <span>find changesets by author, revision,
233 files, or words in the commit message</span>
225 files, or words in the commit message</span>
234 </form>
226 </form>
235
227
236 <div class="description">a</div>
228 <div class="description">a</div>
237
229
238 <table id="changesetEntry">
230 <table id="changesetEntry">
239 <tr>
231 <tr>
240 <th class="author">author</th>
232 <th class="author">author</th>
241 <td class="author">&#116;&#101;&#115;&#116;</td>
233 <td class="author">&#116;&#101;&#115;&#116;</td>
242 </tr>
234 </tr>
243 <tr>
235 <tr>
244 <th class="date">date</th>
236 <th class="date">date</th>
245 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (long ago)</td>
237 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (long ago)</td>
246 </tr>
238 </tr>
247 <tr>
239 <tr>
248 <th class="author">parents</th>
240 <th class="author">parents</th>
249 <td class="author"></td>
241 <td class="author"></td>
250 </tr>
242 </tr>
251 <tr>
243 <tr>
252 <th class="author">children</th>
244 <th class="author">children</th>
253 <td class="author"></td>
245 <td class="author"></td>
254 </tr>
246 </tr>
255
247
256 </table>
248 </table>
257
249
258 <br/>
250 <br/>
259
251
260 <div class="overflow">
252 <div class="overflow">
261 <table class="bigtable">
253 <table class="bigtable">
262 <tr>
254 <tr>
263 <th class="annotate">rev</th>
255 <th class="annotate">rev</th>
264 <th class="lineno">line</th>
256 <th class="line">&nbsp;&nbsp;line source</th>
265 <th class="line">source</th>
266 </tr>
257 </tr>
267 <tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#1" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l1" id="l1"> 1</a></td><td class="source"><span class="c">#!/usr/bin/env python</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#2" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l2" id="l2"> 2</a></td><td class="source"></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#3" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l3" id="l3"> 3</a></td><td class="source"><span class="n">__doc__</span> <span class="o">=</span> <span class="s">&quot;&quot;&quot;This does HTTP get requests given a host:port and path and returns</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#4" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l4" id="l4"> 4</a></td><td class="source"><span class="s">a subset of the headers plus the body of the result.&quot;&quot;&quot;</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#5" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l5" id="l5"> 5</a></td><td class="source"></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#6" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l6" id="l6"> 6</a></td><td class="source"><span class="kn">import</span> <span class="nn">httplib</span><span class="o">,</span> <span class="nn">sys</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#7" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l7" id="l7"> 7</a></td><td class="source"></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#8" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l8" id="l8"> 8</a></td><td class="source"><span class="kn">try</span><span class="p">:</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#9" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l9" id="l9"> 9</a></td><td class="source"> <span class="kn">import</span> <span class="nn">msvcrt</span><span class="o">,</span> <span class="nn">os</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#10" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l10" id="l10"> 10</a></td><td class="source"> <span class="n">msvcrt</span><span class="o">.</span><span class="n">setmode</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">fileno</span><span class="p">(),</span> <span class="n">os</span><span class="o">.</span><span class="n">O_BINARY</span><span class="p">)</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#11" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l11" id="l11"> 11</a></td><td class="source"> <span class="n">msvcrt</span><span class="o">.</span><span class="n">setmode</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stderr</span><span class="o">.</span><span class="n">fileno</span><span class="p">(),</span> <span class="n">os</span><span class="o">.</span><span class="n">O_BINARY</span><span class="p">)</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#12" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l12" id="l12"> 12</a></td><td class="source"><span class="kn">except</span> <span class="ne">ImportError</span><span class="p">:</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#13" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l13" id="l13"> 13</a></td><td class="source"> <span class="kn">pass</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#14" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l14" id="l14"> 14</a></td><td class="source"></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#15" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l15" id="l15"> 15</a></td><td class="source"><span class="n">headers</span> <span class="o">=</span> <span class="p">[</span><span class="n">h</span><span class="o">.</span><span class="n">lower</span><span class="p">()</span> <span class="kn">for</span> <span class="n">h</span> <span class="ow">in</span> <span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">3</span><span class="p">:]]</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#16" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l16" id="l16"> 16</a></td><td class="source"><span class="n">conn</span> <span class="o">=</span> <span class="n">httplib</span><span class="o">.</span><span class="n">HTTPConnection</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">1</span><span class="p">])</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#17" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l17" id="l17"> 17</a></td><td class="source"><span class="n">conn</span><span class="o">.</span><span class="n">request</span><span class="p">(</span><span class="s">&quot;GET&quot;</span><span class="p">,</span> <span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">2</span><span class="p">])</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#18" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l18" id="l18"> 18</a></td><td class="source"><span class="n">response</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">getresponse</span><span class="p">()</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#19" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l19" id="l19"> 19</a></td><td class="source"><span class="kn">print</span> <span class="n">response</span><span class="o">.</span><span class="n">status</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">reason</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#20" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l20" id="l20"> 20</a></td><td class="source"><span class="kn">for</span> <span class="n">h</span> <span class="ow">in</span> <span class="n">headers</span><span class="p">:</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#21" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l21" id="l21"> 21</a></td><td class="source"> <span class="kn">if</span> <span class="n">response</span><span class="o">.</span><span class="n">getheader</span><span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#22" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l22" id="l22"> 22</a></td><td class="source"> <span class="kn">print</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s">: </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">getheader</span><span class="p">(</span><span class="n">h</span><span class="p">))</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#23" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l23" id="l23"> 23</a></td><td class="source"><span class="kn">print</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#24" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l24" id="l24"> 24</a></td><td class="source"><span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">response</span><span class="o">.</span><span class="n">read</span><span class="p">())</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#25" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l25" id="l25"> 25</a></td><td class="source"></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#26" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l26" id="l26"> 26</a></td><td class="source"><span class="kn">if</span> <span class="mf">200</span> <span class="o">&lt;=</span> <span class="n">response</span><span class="o">.</span><span class="n">status</span> <span class="o">&lt;=</span> <span class="mf">299</span><span class="p">:</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#27" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l27" id="l27"> 27</a></td><td class="source"> <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mf">0</span><span class="p">)</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#28" title="7697c52ca9b0: a">test@0</a></td><td class="lineno"><a href="#l28" id="l28"> 28</a></td><td class="source"><span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mf">1</span><span class="p">)</span></td></tr>
258 <tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#1" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l1" id="l1"> 1</a> <span class="c">#!/usr/bin/env python</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#2" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l2" id="l2"> 2</a> </td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#3" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l3" id="l3"> 3</a> <span class="n">__doc__</span> <span class="o">=</span> <span class="s">&quot;&quot;&quot;This does HTTP get requests given a host:port and path and returns</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#4" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l4" id="l4"> 4</a> <span class="s">a subset of the headers plus the body of the result.&quot;&quot;&quot;</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#5" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l5" id="l5"> 5</a> </td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#6" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l6" id="l6"> 6</a> <span class="kn">import</span> <span class="nn">httplib</span><span class="o">,</span> <span class="nn">sys</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#7" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l7" id="l7"> 7</a> </td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#8" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l8" id="l8"> 8</a> <span class="kn">try</span><span class="p">:</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#9" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l9" id="l9"> 9</a> <span class="kn">import</span> <span class="nn">msvcrt</span><span class="o">,</span> <span class="nn">os</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#10" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l10" id="l10"> 10</a> <span class="n">msvcrt</span><span class="o">.</span><span class="n">setmode</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">fileno</span><span class="p">(),</span> <span class="n">os</span><span class="o">.</span><span class="n">O_BINARY</span><span class="p">)</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#11" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l11" id="l11"> 11</a> <span class="n">msvcrt</span><span class="o">.</span><span class="n">setmode</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">stderr</span><span class="o">.</span><span class="n">fileno</span><span class="p">(),</span> <span class="n">os</span><span class="o">.</span><span class="n">O_BINARY</span><span class="p">)</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#12" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l12" id="l12"> 12</a> <span class="kn">except</span> <span class="ne">ImportError</span><span class="p">:</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#13" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l13" id="l13"> 13</a> <span class="kn">pass</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#14" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l14" id="l14"> 14</a> </td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#15" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l15" id="l15"> 15</a> <span class="n">headers</span> <span class="o">=</span> <span class="p">[</span><span class="n">h</span><span class="o">.</span><span class="n">lower</span><span class="p">()</span> <span class="kn">for</span> <span class="n">h</span> <span class="ow">in</span> <span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">3</span><span class="p">:]]</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#16" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l16" id="l16"> 16</a> <span class="n">conn</span> <span class="o">=</span> <span class="n">httplib</span><span class="o">.</span><span class="n">HTTPConnection</span><span class="p">(</span><span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">1</span><span class="p">])</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#17" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l17" id="l17"> 17</a> <span class="n">conn</span><span class="o">.</span><span class="n">request</span><span class="p">(</span><span class="s">&quot;GET&quot;</span><span class="p">,</span> <span class="n">sys</span><span class="o">.</span><span class="n">argv</span><span class="p">[</span><span class="mf">2</span><span class="p">])</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#18" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l18" id="l18"> 18</a> <span class="n">response</span> <span class="o">=</span> <span class="n">conn</span><span class="o">.</span><span class="n">getresponse</span><span class="p">()</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#19" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l19" id="l19"> 19</a> <span class="kn">print</span> <span class="n">response</span><span class="o">.</span><span class="n">status</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">reason</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#20" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l20" id="l20"> 20</a> <span class="kn">for</span> <span class="n">h</span> <span class="ow">in</span> <span class="n">headers</span><span class="p">:</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#21" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l21" id="l21"> 21</a> <span class="kn">if</span> <span class="n">response</span><span class="o">.</span><span class="n">getheader</span><span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="bp">None</span><span class="p">)</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#22" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l22" id="l22"> 22</a> <span class="kn">print</span> <span class="s">&quot;</span><span class="si">%s</span><span class="s">: </span><span class="si">%s</span><span class="s">&quot;</span> <span class="o">%</span> <span class="p">(</span><span class="n">h</span><span class="p">,</span> <span class="n">response</span><span class="o">.</span><span class="n">getheader</span><span class="p">(</span><span class="n">h</span><span class="p">))</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#23" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l23" id="l23"> 23</a> <span class="kn">print</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#24" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l24" id="l24"> 24</a> <span class="n">sys</span><span class="o">.</span><span class="n">stdout</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="n">response</span><span class="o">.</span><span class="n">read</span><span class="p">())</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#25" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l25" id="l25"> 25</a> </td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#26" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l26" id="l26"> 26</a> <span class="kn">if</span> <span class="mf">200</span> <span class="o">&lt;=</span> <span class="n">response</span><span class="o">.</span><span class="n">status</span> <span class="o">&lt;=</span> <span class="mf">299</span><span class="p">:</span></td></tr><tr class="parity0"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#27" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l27" id="l27"> 27</a> <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mf">0</span><span class="p">)</span></td></tr><tr class="parity1"><td class="annotate"><a href="/annotate/7697c52ca9b0/get-with-headers.py#28" title="7697c52ca9b0: a">test@0</a></td><td class="source"><a href="#l28" id="l28"> 28</a> <span class="n">sys</span><span class="o">.</span><span class="n">exit</span><span class="p">(</span><span class="mf">1</span><span class="p">)</span></td></tr>
268 </table>
259 </table>
269 </div>
260 </div>
270 </div>
261 </div>
271 </div>
262 </div>
272
263
273
264
274
265
275 </body>
266 </body>
276 </html>
267 </html>
277
268
278 % hgweb fileannotate, raw
269 % hgweb fileannotate, raw
279
270
280 % hgweb filerevision, raw
271 % hgweb filerevision, raw
281
272
282 % hgweb highlightcss friendly
273 % hgweb highlightcss friendly
283 200 Script output follows
274 200 Script output follows
284
275
285 /* pygments_style = friendly */
276 /* pygments_style = friendly */
286
277
287 % errors encountered
278 % errors encountered
288 % hg serve again
279 % hg serve again
289 % hgweb highlightcss fruity
280 % hgweb highlightcss fruity
290 200 Script output follows
281 200 Script output follows
291
282
292 /* pygments_style = fruity */
283 /* pygments_style = fruity */
293
284
294 % errors encountered
285 % errors encountered
General Comments 0
You need to be logged in to leave comments. Login now