##// END OF EJS Templates
merge with stable
Matt Mackall -
r13868:38906cf9 merge default
parent child Browse files
Show More
@@ -0,0 +1,8
1 <entry>
2 <title>{bookmark|escape}</title>
3 <link rel="alternate" href="{urlbase}{url}rev/{node|short}"/>
4 <id>{urlbase}{url}#bookmark-{node}</id>
5 <updated>{date|rfc3339date}</updated>
6 <published>{date|rfc3339date}</published>
7 <content type="text">{bookmark|strip|escape}</content>
8 </entry>
@@ -0,0 +1,11
1 {header}
2 <id>{urlbase}{url}</id>
3 <link rel="self" href="{urlbase}{url}atom-bookmarks"/>
4 <link rel="alternate" href="{urlbase}{url}bookmarks"/>
5 <title>{repo|escape}: bookmarks</title>
6 <summary>{repo|escape} bookmark history</summary>
7 <author><name>Mercurial SCM</name></author>
8 {latestentry%feedupdated}
9
10 {entries%bookmarkentry}
11 </feed>
@@ -0,0 +1,32
1 {header}
2 <title>{repo|escape}: Bookmarks</title>
3 <link rel="alternate" type="application/atom+xml"
4 href="{url}atom-bookmarks" title="Atom feed for {repo|escape}"/>
5 <link rel="alternate" type="application/rss+xml"
6 href="{url}rss-bookmarks" title="RSS feed for {repo|escape}"/>
7 </head>
8 <body>
9
10 <div class="page_header">
11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / bookmarks
12 </div>
13
14 <div class="page_nav">
15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
16 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
17 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
18 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
19 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
20 bookmarks |
21 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
22 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a> |
23 <a href="{url}help{sessionvars%urlparameter}">help</a>
24 <br/>
25 </div>
26
27 <div class="title">&nbsp;</div>
28 <table cellspacing="0">
29 {entries%bookmarkentry}
30 </table>
31
32 {footer}
@@ -0,0 +1,38
1 {header}
2 <title>{repo|escape}: Bookmarks</title>
3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 </head>
6
7 <body>
8 <div id="container">
9 <div class="page-header">
10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / Bookmarks</h1>
11
12 <form action="{url}log">
13 {sessionvars%hiddenformentry}
14 <dl class="search">
15 <dt><label>Search: </label></dt>
16 <dd><input type="text" name="rev" /></dd>
17 </dl>
18 </form>
19
20 <ul class="page-nav">
21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 <li><a href="{url}changelog{sessionvars%urlparameter}">changelog</a></li>
24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li class="current">bookmarks</li>
27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
28 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a></li>
29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
30 </ul>
31 </div>
32
33 <h2 class="no-link no-border">bookmarks</h2>
34 <table cellspacing="0">
35 {entries%bookmarkentry}
36 </table>
37
38 {footer}
@@ -0,0 +1,6
1 <item>
2 <title>{bookmark|escape}</title>
3 <link>{urlbase}{url}rev/{node|short}</link>
4 <description><![CDATA[{bookmark|strip|escape|addbreaks}]]></description>
5 <pubDate>{date|rfc822date}</pubDate>
6 </item>
@@ -0,0 +1,6
1 {header}
2 <title>{repo|escape}: bookmarks </title>
3 <description>{repo|escape} bookmark history</description>
4 {entries%bookmarkentry}
5 </channel>
6 </rss>
@@ -1,11 +1,13
1 1 default = 'changelog'
2 2 feedupdated = '<updated>{date|rfc3339date}</updated>'
3 3 mimetype = 'application/atom+xml; charset={encoding}'
4 4 header = header.tmpl
5 5 changelog = changelog.tmpl
6 6 changelogentry = changelogentry.tmpl
7 7 filelog = filelog.tmpl
8 8 filelogentry = filelogentry.tmpl
9 9 tags = tags.tmpl
10 10 tagentry = tagentry.tmpl
11 bookmarks = bookmarks.tmpl
12 bookmarkentry = bookmarkentry.tmpl
11 13 error = error.tmpl
@@ -1,199 +1,212
1 1 default = 'shortlog'
2 2
3 3 mimetype = 'text/html; charset={encoding}'
4 4 header = header.tmpl
5 5 footer = ../paper/footer.tmpl
6 6 search = ../paper/search.tmpl
7 7
8 8 changelog = ../paper/shortlog.tmpl
9 9 shortlog = ../paper/shortlog.tmpl
10 10 shortlogentry = ../paper/shortlogentry.tmpl
11 11 graph = ../paper/graph.tmpl
12 12
13 13 help = ../paper/help.tmpl
14 14 helptopics = ../paper/helptopics.tmpl
15 15
16 16 helpentry = '<tr><td><a href="{url}help/{topic|escape}{sessionvars%urlparameter}">{topic|escape}</a></td><td>{summary|escape}</td></tr>'
17 17
18 18 naventry = '<a href="{url}log/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
19 19 navshortentry = '<a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
20 20 navgraphentry = '<a href="{url}graph/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
21 21 filenaventry = '<a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{label|escape}</a> '
22 22 filedifflink = '<a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a> '
23 23 filenodelink = '<a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a> '
24 24 filenolink = '{file|escape} '
25 25 fileellipses = '...'
26 26 changelogentry = ../paper/shortlogentry.tmpl
27 27 searchentry = ../paper/shortlogentry.tmpl
28 28 changeset = ../paper/changeset.tmpl
29 29 manifest = ../paper/manifest.tmpl
30 30
31 31 nav = '{before%naventry} {after%naventry}'
32 32 navshort = '{before%navshortentry}{after%navshortentry}'
33 33 navgraph = '{before%navgraphentry}{after%navgraphentry}'
34 34 filenav = '{before%filenaventry}{after%filenaventry}'
35 35
36 36 direntry = '
37 37 <tr class="fileline parity{parity}">
38 38 <td class="name">
39 39 <a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">
40 40 <img src="{staticurl}coal-folder.png" alt="dir."/> {basename|escape}/
41 41 </a>
42 42 <a href="{url}file/{node|short}{path|urlescape}/{emptydirs|urlescape}{sessionvars%urlparameter}">
43 43 {emptydirs|escape}
44 44 </a>
45 45 </td>
46 46 <td class="size"></td>
47 47 <td class="permissions">drwxr-xr-x</td>
48 48 </tr>'
49 49
50 50 fileentry = '
51 51 <tr class="fileline parity{parity}">
52 52 <td class="filename">
53 53 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">
54 54 <img src="{staticurl}coal-file.png" alt="file"/> {basename|escape}
55 55 </a>
56 56 </td>
57 57 <td class="size">{size}</td>
58 58 <td class="permissions">{permissions|permissions}</td>
59 59 </tr>'
60 60
61 61 filerevision = ../paper/filerevision.tmpl
62 62 fileannotate = ../paper/fileannotate.tmpl
63 63 filediff = ../paper/filediff.tmpl
64 64 filelog = ../paper/filelog.tmpl
65 65 fileline = '
66 66 <div class="parity{parity} source"><a href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</div>'
67 67 filelogentry = ../paper/filelogentry.tmpl
68 68
69 69 annotateline = '
70 70 <tr class="parity{parity}">
71 71 <td class="annotate">
72 72 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}#{targetline}"
73 73 title="{node|short}: {desc|escape|firstline}">{author|user}@{rev}</a>
74 74 </td>
75 75 <td class="source"><a href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</td>
76 76 </tr>'
77 77
78 78 diffblock = '<div class="source bottomline parity{parity}"><pre>{lines}</pre></div>'
79 79 difflineplus = '<a href="#{lineid}" id="{lineid}">{linenumber}</a> <span class="plusline">{line|escape}</span>'
80 80 difflineminus = '<a href="#{lineid}" id="{lineid}">{linenumber}</a> <span class="minusline">{line|escape}</span>'
81 81 difflineat = '<a href="#{lineid}" id="{lineid}">{linenumber}</a> <span class="atline">{line|escape}</span>'
82 82 diffline = '<a href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}'
83 83
84 84 changelogparent = '
85 85 <tr>
86 86 <th class="parent">parent {rev}:</th>
87 87 <td class="parent"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td>
88 88 </tr>'
89 89
90 90 changesetparent = '<a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a> '
91 91
92 92 filerevparent = '<a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{rename%filerename}{node|short}</a> '
93 93 filerevchild = '<a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a> '
94 94
95 95 filerename = '{file|escape}@'
96 96 filelogrename = '
97 97 <span class="base">
98 98 base
99 99 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">
100 100 {file|escape}@{node|short}
101 101 </a>
102 102 </span>'
103 103 fileannotateparent = '
104 104 <tr>
105 105 <td class="metatag">parent:</td>
106 106 <td>
107 107 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">
108 108 {rename%filerename}{node|short}
109 109 </a>
110 110 </td>
111 111 </tr>'
112 112 changesetchild = ' <a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a>'
113 113 changelogchild = '
114 114 <tr>
115 115 <th class="child">child</th>
116 116 <td class="child">
117 117 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">
118 118 {node|short}
119 119 </a>
120 120 </td>
121 121 </tr>'
122 122 fileannotatechild = '
123 123 <tr>
124 124 <td class="metatag">child:</td>
125 125 <td>
126 126 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">
127 127 {node|short}
128 128 </a>
129 129 </td>
130 130 </tr>'
131 131 tags = ../paper/tags.tmpl
132 132 tagentry = '
133 133 <tr class="tagEntry parity{parity}">
134 134 <td>
135 135 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">
136 136 {tag|escape}
137 137 </a>
138 138 </td>
139 139 <td class="node">
140 140 {node|short}
141 141 </td>
142 142 </tr>'
143 bookmarks = ../paper/bookmarks.tmpl
144 bookmarkentry = '
145 <tr class="tagEntry parity{parity}">
146 <td>
147 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">
148 {bookmark|escape}
149 </a>
150 </td>
151 <td class="node">
152 {node|short}
153 </td>
154 </tr>'
143 155 branches = ../paper/branches.tmpl
144 156 branchentry = '
145 157 <tr class="tagEntry parity{parity}">
146 158 <td>
147 159 <a href="{url}shortlog/{node|short}{sessionvars%urlparameter}" class="{status}">
148 160 {branch|escape}
149 161 </a>
150 162 </td>
151 163 <td class="node">
152 164 {node|short}
153 165 </td>
154 166 </tr>'
155 167 changelogtag = '<span class="tag">{name|escape}</span> '
156 168 changesettag = '<span class="tag">{tag|escape}</span> '
169 changesetbookmark = '<span class="tag">{bookmark|escape}</span> '
157 170 changelogbranchhead = '<span class="branchhead">{name|escape}</span> '
158 171 changelogbranchname = '<span class="branchname">{name|escape}</span> '
159 172
160 173 filediffparent = '
161 174 <tr>
162 175 <th class="parent">parent {rev}:</th>
163 176 <td class="parent"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td>
164 177 </tr>'
165 178 filelogparent = '
166 179 <tr>
167 180 <th>parent {rev}:</th>
168 181 <td><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td>
169 182 </tr>'
170 183 filediffchild = '
171 184 <tr>
172 185 <th class="child">child {rev}:</th>
173 186 <td class="child"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a>
174 187 </td>
175 188 </tr>'
176 189 filelogchild = '
177 190 <tr>
178 191 <th>child {rev}:</th>
179 192 <td><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td>
180 193 </tr>'
181 194
182 195 indexentry = '
183 196 <tr class="parity{parity}">
184 197 <td><a href="{url}{sessionvars%urlparameter}">{name|escape}</a></td>
185 198 <td>{description}</td>
186 199 <td>{contact|obfuscate}</td>
187 200 <td class="age">{lastchange|age}</td>
188 201 <td class="indexlinks">{archives%indexarchiveentry}</td>
189 202 </tr>\n'
190 203 indexarchiveentry = '<a href="{url}archive/{node|short}{extension|urlescape}">&nbsp;&darr;{type|escape}</a>'
191 204 index = ../paper/index.tmpl
192 205 archiveentry = '
193 206 <li>
194 207 <a href="{url}archive/{node|short}{extension|urlescape}">{type|escape}</a>
195 208 </li>'
196 209 notfound = ../paper/notfound.tmpl
197 210 error = ../paper/error.tmpl
198 211 urlparameter = '{separator}{name}={value|urlescape}'
199 212 hiddenformentry = '<input type="hidden" name="{name}" value="{value|escape}" />'
@@ -1,31 +1,32
1 1 {header}
2 2 <title>{repo|escape}: Branches</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-tags" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-tags" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / branches
12 12 </div>
13 13
14 14 <div class="page_nav">
15 15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
16 16 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
17 17 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
18 18 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
19 19 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
20 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
20 21 branches |
21 22 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a> |
22 23 <a href="{url}help{sessionvars%urlparameter}">help</a>
23 24 <br/>
24 25 </div>
25 26
26 27 <div class="title">&nbsp;</div>
27 28 <table cellspacing="0">
28 29 {entries%branchentry}
29 30 </table>
30 31
31 32 {footer}
@@ -1,40 +1,41
1 1 {header}
2 2 <title>{repo|escape}: Changelog</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / changelog
12 12 </div>
13 13
14 14 <form action="{url}log">
15 15 {sessionvars%hiddenformentry}
16 16 <div class="search">
17 17 <input type="text" name="rev" />
18 18 </div>
19 19 </form>
20 20
21 21 <div class="page_nav">
22 22 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
23 23 <a href="{url}shortlog/{rev}{sessionvars%urlparameter}">shortlog</a> |
24 24 changelog |
25 25 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
26 26 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
27 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
27 28 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
28 29 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>{archives%archiveentry} |
29 30 <a href="{url}help{sessionvars%urlparameter}">help</a>
30 31 <br/>
31 32 {changenav%nav}<br/>
32 33 </div>
33 34
34 35 {entries%changelogentry}
35 36
36 37 <div class="page_nav">
37 38 {changenav%nav}<br/>
38 39 </div>
39 40
40 41 {footer}
@@ -1,14 +1,14
1 1 <div>
2 <a class="title" href="{url}rev/{node|short}{sessionvars%urlparameter}"><span class="age">{date|age}</span>{desc|strip|firstline|escape|nonempty}<span class="logtags"> {inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}</span></a>
2 <a class="title" href="{url}rev/{node|short}{sessionvars%urlparameter}"><span class="age">{date|age}</span>{desc|strip|firstline|escape|nonempty}<span class="logtags"> {inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}{bookmarks%bookmarktag}</span></a>
3 3 </div>
4 4 <div class="title_text">
5 5 <div class="log_link">
6 6 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a><br/>
7 7 </div>
8 8 <i>{author|obfuscate} [{date|rfc822date}] rev {rev}</i><br/>
9 9 </div>
10 10 <div class="log_body">
11 11 {desc|strip|escape|addbreaks|nonempty}
12 12 <br/>
13 13 <br/>
14 14 </div>
@@ -1,52 +1,53
1 1 {header}
2 2 <title>{repo|escape}: changeset {rev}:{node|short}</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / changeset
12 12 </div>
13 13
14 14 <div class="page_nav">
15 15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
16 16 <a href="{url}shortlog/{rev}{sessionvars%urlparameter}">shortlog</a> |
17 17 <a href="{url}log/{rev}{sessionvars%urlparameter}">changelog</a> |
18 18 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
19 19 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
20 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
20 21 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
21 22 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a> |
22 23 changeset |
23 24 <a href="{url}raw-rev/{node|short}">raw</a> {archives%archiveentry} |
24 25 <a href="{url}help{sessionvars%urlparameter}">help</a>
25 26 <br/>
26 27 </div>
27 28
28 29 <div>
29 <a class="title" href="{url}raw-rev/{node|short}">{desc|strip|escape|firstline|nonempty} <span class="logtags">{inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}</span></a>
30 <a class="title" href="{url}raw-rev/{node|short}">{desc|strip|escape|firstline|nonempty} <span class="logtags">{inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}{bookmarks%bookmarktag}</span></a>
30 31 </div>
31 32 <div class="title_text">
32 33 <table cellspacing="0">
33 34 <tr><td>author</td><td>{author|obfuscate}</td></tr>
34 35 <tr><td></td><td>{date|date} ({date|age})</td></tr>
35 36 {branch%changesetbranch}
36 37 <tr><td>changeset {rev}</td><td style="font-family:monospace">{node|short}</td></tr>
37 38 {parent%changesetparent}
38 39 {child%changesetchild}
39 40 </table></div>
40 41
41 42 <div class="page_body">
42 43 {desc|strip|escape|addbreaks|nonempty}
43 44 </div>
44 45 <div class="list_head"></div>
45 46 <div class="title_text">
46 47 <table cellspacing="0">
47 48 {files}
48 49 </table></div>
49 50
50 51 <div class="page_body">{diff}</div>
51 52
52 53 {footer}
@@ -1,25 +1,33
1 1 {header}
2 2 <title>{repo|escape}: Error</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / error
12 12 </div>
13 13
14 14 <div class="page_nav">
15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> | <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> | <a href="{url}log{sessionvars%urlparameter}">changelog</a> | <a href="{url}tags{sessionvars%urlparameter}">tags</a> | <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a><br/>
15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
16 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
17 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
18 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
19 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
20 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
21 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a> |
22 <a href="{url}help{sessionvars%urlparameter}">help</a>
23 <br/>
16 24 </div>
17 25
18 26 <div class="page_body">
19 27 <br/>
20 28 <i>An error occurred while processing your request</i><br/>
21 29 <br/>
22 30 {error|escape}
23 31 </div>
24 32
25 33 {footer}
@@ -1,64 +1,65
1 1 {header}
2 2 <title>{repo|escape}: {file|escape}@{node|short} (annotated)</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / annotate
12 12 </div>
13 13
14 14 <div class="page_nav">
15 15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
16 16 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
17 17 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
18 18 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
19 19 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
20 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
20 21 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
21 22 <a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">files</a> |
22 23 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a> |
23 24 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a> |
24 25 <a href="{url}file/tip/{file|urlescape}{sessionvars%urlparameter}">latest</a> |
25 26 <a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">revisions</a> |
26 27 annotate |
27 28 <a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a> |
28 29 <a href="{url}raw-annotate/{node|short}/{file|urlescape}">raw</a> |
29 30 <a href="{url}help{sessionvars%urlparameter}">help</a>
30 31 <br/>
31 32 </div>
32 33
33 34 <div class="title">{file|escape}</div>
34 35
35 36 <div class="title_text">
36 37 <table cellspacing="0">
37 38 <tr>
38 39 <td>author</td>
39 40 <td>{author|obfuscate}</td></tr>
40 41 <tr>
41 42 <td></td>
42 43 <td>{date|date} ({date|age})</td></tr>
43 44 {branch%filerevbranch}
44 45 <tr>
45 46 <td>changeset {rev}</td>
46 47 <td style="font-family:monospace"><a class="list" href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td></tr>
47 48 {parent%fileannotateparent}
48 49 {child%fileannotatechild}
49 50 <tr>
50 51 <td>permissions</td>
51 52 <td style="font-family:monospace">{permissions|permissions}</td></tr>
52 53 </table>
53 54 </div>
54 55
55 56 <div class="page_path">
56 57 {desc|strip|escape|addbreaks|nonempty}
57 58 </div>
58 59 <div class="page_body">
59 60 <table>
60 61 {annotate%annotateline}
61 62 </table>
62 63 </div>
63 64
64 65 {footer}
@@ -1,49 +1,50
1 1 {header}
2 2 <title>{repo|escape}: diff {file|escape}</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / diff
12 12 </div>
13 13
14 14 <div class="page_nav">
15 15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
16 16 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
17 17 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
18 18 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
19 19 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
20 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
20 21 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
21 22 <a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">files</a> |
22 23 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a> |
23 24 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a> |
24 25 <a href="{url}file/tip/{file|urlescape}{sessionvars%urlparameter}">latest</a> |
25 26 <a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">revisions</a> |
26 27 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a> |
27 28 diff |
28 29 <a href="{url}raw-diff/{node|short}/{file|urlescape}">raw</a><br/> |
29 30 <a href="{url}help{sessionvars%urlparameter}">help</a>
30 31 </div>
31 32
32 33 <div class="title">{file|escape}</div>
33 34
34 35 <table>
35 36 {branch%filerevbranch}
36 37 <tr>
37 38 <td>changeset {rev}</td>
38 39 <td style="font-family:monospace"><a class="list" href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td></tr>
39 40 {parent%filediffparent}
40 41 {child%filediffchild}
41 42 </table>
42 43
43 44 <div class="list_head"></div>
44 45
45 46 <div class="page_body">
46 47 {diff}
47 48 </div>
48 49
49 50 {footer}
@@ -1,41 +1,42
1 1 {header}
2 2 <title>{repo|escape}: File revisions</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / file revisions
12 12 </div>
13 13
14 14 <div class="page_nav">
15 15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
16 16 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
17 17 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
18 18 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
19 19 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
20 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
20 21 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
21 22 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a> |
22 23 revisions |
23 24 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a> |
24 25 <a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a> |
25 26 <a href="{url}rss-log/tip/{file|urlescape}">rss</a> |
26 27 <a href="{url}help{sessionvars%urlparameter}">help</a>
27 28 <br/>
28 29 {nav%filenav}
29 30 </div>
30 31
31 32 <div class="title" >{file|urlescape}</div>
32 33
33 34 <table>
34 35 {entries%filelogentry}
35 36 </table>
36 37
37 38 <div class="page_nav">
38 39 {nav%filenav}
39 40 </div>
40 41
41 42 {footer}
@@ -1,63 +1,64
1 1 {header}
2 2 <title>{repo|escape}: {file|escape}@{node|short}</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / file revision
12 12 </div>
13 13
14 14 <div class="page_nav">
15 15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
16 16 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
17 17 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
18 18 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
19 19 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
20 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
20 21 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
21 22 <a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">files</a> |
22 23 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a> |
23 24 file |
24 25 <a href="{url}file/tip/{file|urlescape}{sessionvars%urlparameter}">latest</a> |
25 26 <a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">revisions</a> |
26 27 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a> |
27 28 <a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a> |
28 29 <a href="{url}raw-file/{node|short}/{file|urlescape}">raw</a> |
29 30 <a href="{url}help{sessionvars%urlparameter}">help</a>
30 31 <br/>
31 32 </div>
32 33
33 34 <div class="title">{file|escape}</div>
34 35
35 36 <div class="title_text">
36 37 <table cellspacing="0">
37 38 <tr>
38 39 <td>author</td>
39 40 <td>{author|obfuscate}</td></tr>
40 41 <tr>
41 42 <td></td>
42 43 <td>{date|date} ({date|age})</td></tr>
43 44 {branch%filerevbranch}
44 45 <tr>
45 46 <td>changeset {rev}</td>
46 47 <td style="font-family:monospace"><a class="list" href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td></tr>
47 48 {parent%filerevparent}
48 49 {child%filerevchild}
49 50 <tr>
50 51 <td>permissions</td>
51 52 <td style="font-family:monospace">{permissions|permissions}</td></tr>
52 53 </table>
53 54 </div>
54 55
55 56 <div class="page_path">
56 57 {desc|strip|escape|addbreaks|nonempty}
57 58 </div>
58 59
59 60 <div class="page_body">
60 61 {text%fileline}
61 62 </div>
62 63
63 64 {footer}
@@ -1,122 +1,129
1 1 {header}
2 2 <title>{repo|escape}: Graph</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}"/>
7 7 <!--[if IE]><script type="text/javascript" src="{staticurl}excanvas.js"></script><![endif]-->
8 8 </head>
9 9 <body>
10 10
11 11 <div class="page_header">
12 12 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / graph
13 13 </div>
14 14
15 15 <form action="{url}log">
16 16 {sessionvars%hiddenformentry}
17 17 <div class="search">
18 18 <input type="text" name="rev" />
19 19 </div>
20 20 </form>
21 21 <div class="page_nav">
22 22 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
23 23 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
24 24 <a href="{url}log/{rev}{sessionvars%urlparameter}">changelog</a> |
25 25 graph |
26 26 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
27 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
27 28 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
28 29 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a> |
29 30 <a href="{url}help{sessionvars%urlparameter}">help</a>
30 31 <br/>
31 32 <a href="{url}graph/{rev}{lessvars%urlparameter}">less</a>
32 33 <a href="{url}graph/{rev}{morevars%urlparameter}">more</a>
33 34 | {changenav%navgraph}<br/>
34 35 </div>
35 36
36 37 <div class="title">&nbsp;</div>
37 38
38 39 <noscript>The revision graph only works with JavaScript-enabled browsers.</noscript>
39 40
40 41 <div id="wrapper">
41 42 <ul id="nodebgs"></ul>
42 43 <canvas id="graph" width="480" height="{canvasheight}"></canvas>
43 44 <ul id="graphnodes"></ul>
44 45 </div>
45 46
46 47 <script type="text/javascript" src="{staticurl}graph.js"></script>
47 48 <script>
48 49 <!-- hide script content
49 50
50 51 var data = {jsdata|json};
51 52 var graph = new Graph();
52 53 graph.scale({bg_height});
53 54
54 55 graph.edge = function(x0, y0, x1, y1, color) \{
55 56
56 57 this.setColor(color, 0.0, 0.65);
57 58 this.ctx.beginPath();
58 59 this.ctx.moveTo(x0, y0);
59 60 this.ctx.lineTo(x1, y1);
60 61 this.ctx.stroke();
61 62
62 63 }
63 64
64 65 var revlink = '<li style="_STYLE"><span class="desc">';
65 66 revlink += '<a class="list" href="{url}rev/_NODEID{sessionvars%urlparameter}" title="_NODEID"><b>_DESC</b></a>';
66 67 revlink += '</span> _TAGS';
67 68 revlink += '<span class="info">_DATE, by _USER</span></li>';
68 69
69 70 graph.vertex = function(x, y, color, parity, cur) \{
70 71
71 72 this.ctx.beginPath();
72 73 color = this.setColor(color, 0.25, 0.75);
73 74 this.ctx.arc(x, y, radius, 0, Math.PI * 2, true);
74 75 this.ctx.fill();
75 76
76 77 var bg = '<li class="bg parity' + parity + '"></li>';
77 78 var left = (this.columns + 1) * this.bg_height;
78 79 var nstyle = 'padding-left: ' + left + 'px;';
79 80 var item = revlink.replace(/_STYLE/, nstyle);
80 81 item = item.replace(/_PARITY/, 'parity' + parity);
81 82 item = item.replace(/_NODEID/, cur[0]);
82 83 item = item.replace(/_NODEID/, cur[0]);
83 84 item = item.replace(/_DESC/, cur[3]);
84 85 item = item.replace(/_USER/, cur[4]);
85 86 item = item.replace(/_DATE/, cur[5]);
86 87
87 88 var tagspan = '';
88 if (cur[7].length || (cur[6][0] != 'default' || cur[6][1])) \{
89 if (cur[7].length || cur[8].length || (cur[6][0] != 'default' || cur[6][1])) \{
89 90 tagspan = '<span class="logtags">';
90 91 if (cur[6][1]) \{
91 92 tagspan += '<span class="branchtag" title="' + cur[6][0] + '">';
92 93 tagspan += cur[6][0] + '</span> ';
93 94 } else if (!cur[6][1] && cur[6][0] != 'default') \{
94 95 tagspan += '<span class="inbranchtag" title="' + cur[6][0] + '">';
95 96 tagspan += cur[6][0] + '</span> ';
96 97 }
97 98 if (cur[7].length) \{
98 99 for (var t in cur[7]) \{
99 100 var tag = cur[7][t];
100 101 tagspan += '<span class="tagtag">' + tag + '</span> ';
101 102 }
102 103 }
104 if (cur[8].length) \{
105 for (var t in cur[8]) \{
106 var bookmark = cur[8][t];
107 tagspan += '<span class="bookmarktag">' + bookmark + '</span> ';
108 }
109 }
103 110 tagspan += '</span>';
104 111 }
105 112
106 113 item = item.replace(/_TAGS/, tagspan);
107 114 return [bg, item];
108 115
109 116 }
110 117
111 118 graph.render(data);
112 119
113 120 // stop hiding script -->
114 121 </script>
115 122
116 123 <div class="page_nav">
117 124 <a href="{url}graph/{rev}{lessvars%urlparameter}">less</a>
118 125 <a href="{url}graph/{rev}{morevars%urlparameter}">more</a>
119 126 | {changenav%navgraph}
120 127 </div>
121 128
122 129 {footer}
@@ -1,31 +1,33
1 1 {header}
2 2 <title>{repo|escape}: Branches</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-tags" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-tags" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / branches
11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / help
12 12 </div>
13 13
14 14 <div class="page_nav">
15 15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
16 16 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
17 17 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
18 18 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
19 19 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
20 branches |
21 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>
20 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
21 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
22 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a> |
23 help
22 24 <br/>
23 25 </div>
24 26
25 27 <div class="title">&nbsp;</div>
26 28
27 29 <pre>
28 30 {doc|escape}
29 31 </pre>
30 32
31 33 {footer}
@@ -1,38 +1,39
1 1 {header}
2 2 <title>{repo|escape}: Branches</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-tags" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-tags" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / branches
11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / help
12 12 </div>
13 13
14 14 <div class="page_nav">
15 15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
16 16 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
17 17 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
18 18 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
19 19 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
20 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
20 21 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
21 22 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a> |
22 23 help
23 24 <br/>
24 25 </div>
25 26
26 27 <div class="title">&nbsp;</div>
27 28 <table cellspacing="0">
28 29 <tr><td colspan="2"><h2><a name="main" href="#topics">Topics</a></h2></td></tr>
29 30 {topics % helpentry}
30 31
31 32 <tr><td colspan="2"><h2><a name="main" href="#main">Main Commands</a></h2></td></tr>
32 33 {earlycommands % helpentry}
33 34
34 35 <tr><td colspan="2"><h2><a name="other" href="#other">Other Commands</a></h2></td></tr>
35 36 {othercommands % helpentry}
36 37 </table>
37 38
38 39 {footer}
@@ -1,40 +1,41
1 1 {header}
2 2 <title>{repo|escape}: files</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / files
12 12 </div>
13 13
14 14 <div class="page_nav">
15 15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
16 16 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
17 17 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
18 18 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
19 19 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
20 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
20 21 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
21 22 files |
22 23 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a> {archives%archiveentry} |
23 24 <a href="{url}help{sessionvars%urlparameter}">help</a>
24 25 <br/>
25 26 </div>
26 27
27 <div class="title">{path|escape} <span class="logtags">{inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}</span></div>
28 <div class="title">{path|escape} <span class="logtags">{inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}{bookmarks%bookmarktag}</span></div>
28 29 <table cellspacing="0">
29 30 <tr class="parity{upparity}">
30 31 <td style="font-family:monospace">drwxr-xr-x</td>
31 32 <td style="font-family:monospace"></td>
32 33 <td style="font-family:monospace"></td>
33 34 <td><a href="{url}file/{node|short}{up|urlescape}{sessionvars%urlparameter}">[up]</a></td>
34 35 <td class="link">&nbsp;</td>
35 36 </tr>
36 37 {dentries%direntry}
37 38 {fentries%fileentry}
38 39 </table>
39 40
40 41 {footer}
@@ -1,260 +1,272
1 1 default = 'summary'
2 2 mimetype = 'text/html; charset={encoding}'
3 3 header = header.tmpl
4 4 footer = footer.tmpl
5 5 search = search.tmpl
6 6 changelog = changelog.tmpl
7 7 summary = summary.tmpl
8 8 error = error.tmpl
9 9 notfound = notfound.tmpl
10 10
11 11 help = help.tmpl
12 12 helptopics = helptopics.tmpl
13 13
14 14 helpentry = '<tr><td><a href="{url}help/{topic|escape}{sessionvars%urlparameter}">{topic|escape}</a></td><td>{summary|escape}</td></tr>'
15 15
16 16 naventry = '<a href="{url}log/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
17 17 navshortentry = '<a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
18 18 navgraphentry = '<a href="{url}graph/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
19 19 filenaventry = '<a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{label|escape}</a> '
20 20 filedifflink = '<a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a> '
21 21 filenodelink = '
22 22 <tr class="parity{parity}">
23 23 <td><a class="list" href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a></td>
24 24 <td></td>
25 25 <td class="link">
26 26 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a> |
27 27 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a> |
28 28 <a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a> |
29 29 <a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">revisions</a>
30 30 </td>
31 31 </tr>'
32 32 filenolink = '
33 33 <tr class="parity{parity}">
34 34 <td><a class="list" href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a></td>
35 35 <td></td>
36 36 <td class="link">
37 37 file |
38 38 annotate |
39 39 <a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a> |
40 40 <a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">revisions</a>
41 41 </td>
42 42 </tr>'
43 43
44 44 nav = '{before%naventry} {after%naventry}'
45 45 navshort = '{before%navshortentry}{after%navshortentry}'
46 46 navgraph = '{before%navgraphentry}{after%navgraphentry}'
47 47 filenav = '{before%filenaventry}{after%filenaventry}'
48 48
49 49 fileellipses = '...'
50 50 changelogentry = changelogentry.tmpl
51 51 searchentry = changelogentry.tmpl
52 52 changeset = changeset.tmpl
53 53 manifest = manifest.tmpl
54 54 direntry = '
55 55 <tr class="parity{parity}">
56 56 <td style="font-family:monospace">drwxr-xr-x</td>
57 57 <td style="font-family:monospace"></td>
58 58 <td style="font-family:monospace"></td>
59 59 <td>
60 60 <a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">{basename|escape}</a>
61 61 <a href="{url}file/{node|short}{path|urlescape}/{emptydirs|urlescape}{sessionvars%urlparameter}">{emptydirs|escape}</a>
62 62 </td>
63 63 <td class="link">
64 64 <a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">files</a>
65 65 </td>
66 66 </tr>'
67 67 fileentry = '
68 68 <tr class="parity{parity}">
69 69 <td style="font-family:monospace">{permissions|permissions}</td>
70 70 <td style="font-family:monospace" align=right>{date|isodate}</td>
71 71 <td style="font-family:monospace" align=right>{size}</td>
72 72 <td class="list">
73 73 <a class="list" href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{basename|escape}</a>
74 74 </td>
75 75 <td class="link">
76 76 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a> |
77 77 <a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">revisions</a> |
78 78 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a>
79 79 </td>
80 80 </tr>'
81 81 filerevision = filerevision.tmpl
82 82 fileannotate = fileannotate.tmpl
83 83 filediff = filediff.tmpl
84 84 filelog = filelog.tmpl
85 85 fileline = '
86 86 <div style="font-family:monospace" class="parity{parity}">
87 87 <pre><a class="linenr" href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</pre>
88 88 </div>'
89 89 annotateline = '
90 90 <tr style="font-family:monospace" class="parity{parity}">
91 91 <td class="linenr" style="text-align: right;">
92 92 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}#l{targetline}"
93 93 title="{node|short}: {desc|escape|firstline}">{author|user}@{rev}</a>
94 94 </td>
95 95 <td><pre><a class="linenr" href="#{lineid}" id="{lineid}">{linenumber}</a></pre></td>
96 96 <td><pre>{line|escape}</pre></td>
97 97 </tr>'
98 98 difflineplus = '<span style="color:#008800;"><a class="linenr" href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</span>'
99 99 difflineminus = '<span style="color:#cc0000;"><a class="linenr" href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</span>'
100 100 difflineat = '<span style="color:#990099;"><a class="linenr" href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</span>'
101 101 diffline = '<span><a class="linenr" href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</span>'
102 102 changelogparent = '
103 103 <tr>
104 104 <th class="parent">parent {rev}:</th>
105 105 <td class="parent">
106 106 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a>
107 107 </td>
108 108 </tr>'
109 109 changesetbranch = '<tr><td>branch</td><td>{name}</td></tr>'
110 110 changesetparent = '
111 111 <tr>
112 112 <td>parent {rev}</td>
113 113 <td style="font-family:monospace">
114 114 <a class="list" href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a>
115 115 </td>
116 116 </tr>'
117 117 filerevbranch = '<tr><td>branch</td><td>{name}</td></tr>'
118 118 filerevparent = '
119 119 <tr>
120 120 <td>parent {rev}</td>
121 121 <td style="font-family:monospace">
122 122 <a class="list" href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">
123 123 {rename%filerename}{node|short}
124 124 </a>
125 125 </td>
126 126 </tr>'
127 127 filerename = '{file|escape}@'
128 128 filelogrename = '| <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">base</a>'
129 129 fileannotateparent = '
130 130 <tr>
131 131 <td>parent {rev}</td>
132 132 <td style="font-family:monospace">
133 133 <a class="list" href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">
134 134 {rename%filerename}{node|short}
135 135 </a>
136 136 </td>
137 137 </tr>'
138 138 changelogchild = '
139 139 <tr>
140 140 <th class="child">child {rev}:</th>
141 141 <td class="child"><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></td>
142 142 </tr>'
143 143 changesetchild = '
144 144 <tr>
145 145 <td>child {rev}</td>
146 146 <td style="font-family:monospace">
147 147 <a class="list" href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a>
148 148 </td>
149 149 </tr>'
150 150 filerevchild = '
151 151 <tr>
152 152 <td>child {rev}</td>
153 153 <td style="font-family:monospace">
154 154 <a class="list" href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td>
155 155 </tr>'
156 156 fileannotatechild = '
157 157 <tr>
158 158 <td>child {rev}</td>
159 159 <td style="font-family:monospace">
160 160 <a class="list" href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td>
161 161 </tr>'
162 162 tags = tags.tmpl
163 163 tagentry = '
164 164 <tr class="parity{parity}">
165 165 <td class="age"><i>{date|age}</i></td>
166 166 <td><a class="list" href="{url}rev/{node|short}{sessionvars%urlparameter}"><b>{tag|escape}</b></a></td>
167 167 <td class="link">
168 168 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a> |
169 169 <a href="{url}log/{node|short}{sessionvars%urlparameter}">changelog</a> |
170 170 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>
171 171 </td>
172 172 </tr>'
173 bookmarks = bookmarks.tmpl
174 bookmarkentry = '
175 <tr class="parity{parity}">
176 <td class="age"><i>{date|age}</i></td>
177 <td><a class="list" href="{url}rev/{node|short}{sessionvars%urlparameter}"><b>{bookmark|escape}</b></a></td>
178 <td class="link">
179 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a> |
180 <a href="{url}log/{node|short}{sessionvars%urlparameter}">changelog</a> |
181 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>
182 </td>
183 </tr>'
173 184 branches = branches.tmpl
174 185 branchentry = '
175 186 <tr class="parity{parity}">
176 187 <td class="age"><i>{date|age}</i></td>
177 188 <td><a class="list" href="{url}shortlog/{node|short}{sessionvars%urlparameter}"><b>{node|short}</b></a></td>
178 189 <td class="{status}">{branch|escape}</td>
179 190 <td class="link">
180 191 <a href="{url}changeset/{node|short}{sessionvars%urlparameter}">changeset</a> |
181 192 <a href="{url}log/{node|short}{sessionvars%urlparameter}">changelog</a> |
182 193 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>
183 194 </td>
184 195 </tr>'
185 196 diffblock = '<pre>{lines}</pre>'
186 197 filediffparent = '
187 198 <tr>
188 199 <td>parent {rev}</td>
189 200 <td style="font-family:monospace">
190 201 <a class="list" href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">
191 202 {node|short}
192 203 </a>
193 204 </td>
194 205 </tr>'
195 206 filelogparent = '
196 207 <tr>
197 208 <td align="right">parent {rev}:&nbsp;</td>
198 209 <td><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td>
199 210 </tr>'
200 211 filediffchild = '
201 212 <tr>
202 213 <td>child {rev}</td>
203 214 <td style="font-family:monospace">
204 215 <a class="list" href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a>
205 216 </td>
206 217 </tr>'
207 218 filelogchild = '
208 219 <tr>
209 220 <td align="right">child {rev}:&nbsp;</td>
210 221 <td><a href="{url}file{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td>
211 222 </tr>'
212 223 shortlog = shortlog.tmpl
213 224 graph = graph.tmpl
214 225 tagtag = '<span class="tagtag" title="{name}">{name}</span> '
215 226 branchtag = '<span class="branchtag" title="{name}">{name}</span> '
216 227 inbranchtag = '<span class="inbranchtag" title="{name}">{name}</span> '
228 bookmarktag = '<span class="bookmarktag" title="{name}">{name}</span> '
217 229 shortlogentry = '
218 230 <tr class="parity{parity}">
219 231 <td class="age"><i>{date|age}</i></td>
220 232 <td><i>{author|person}</i></td>
221 233 <td>
222 234 <a class="list" href="{url}rev/{node|short}{sessionvars%urlparameter}">
223 235 <b>{desc|strip|firstline|escape|nonempty}</b>
224 <span class="logtags">{inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}</span>
236 <span class="logtags">{inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}{bookmarks%bookmarktag}</span>
225 237 </a>
226 238 </td>
227 239 <td class="link" nowrap>
228 240 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a> |
229 241 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>
230 242 </td>
231 243 </tr>'
232 244 filelogentry = '
233 245 <tr class="parity{parity}">
234 246 <td class="age"><i>{date|age}</i></td>
235 247 <td>
236 248 <a class="list" href="{url}rev/{node|short}{sessionvars%urlparameter}">
237 249 <b>{desc|strip|firstline|escape|nonempty}</b>
238 250 </a>
239 251 </td>
240 252 <td class="link">
241 253 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a>&nbsp;|&nbsp;<a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a>&nbsp;|&nbsp;<a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a> {rename%filelogrename}</td>
242 254 </tr>'
243 255 archiveentry = ' | <a href="{url}archive/{node|short}{extension}">{type|escape}</a> '
244 256 indexentry = '
245 257 <tr class="parity{parity}">
246 258 <td>
247 259 <a class="list" href="{url}{sessionvars%urlparameter}">
248 260 <b>{name|escape}</b>
249 261 </a>
250 262 </td>
251 263 <td>{description}</td>
252 264 <td>{contact|obfuscate}</td>
253 265 <td class="age">{lastchange|age}</td>
254 266 <td class="indexlinks">{archives%indexarchiveentry}</td>
255 267 <td><div class="rss_logo"><a href="{url}rss-log">RSS</a> <a href="{url}atom-log">Atom</a></div></td>
256 268 </tr>\n'
257 269 indexarchiveentry = ' <a href="{url}archive/{node|short}{extension}">{type|escape}</a> '
258 270 index = index.tmpl
259 271 urlparameter = '{separator}{name}={value|urlescape}'
260 272 hiddenformentry = '<input type="hidden" name="{name}" value="{value|escape}" />'
@@ -1,38 +1,39
1 1 {header}
2 2 <title>{repo|escape}: Search</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / search
12 12
13 13 <form action="{url}log">
14 14 {sessionvars%hiddenformentry}
15 15 <div class="search">
16 16 <input type="text" name="rev" value="{query|escape}" />
17 17 </div>
18 18 </form>
19 19 </div>
20 20
21 21 <div class="page_nav">
22 22 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
23 23 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
24 24 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
25 25 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
26 26 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
27 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
27 28 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
28 29 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>{archives%archiveentry}
29 30 |
30 31 <a href="{url}help{sessionvars%urlparameter}">help</a>
31 32 <br/>
32 33 </div>
33 34
34 35 <div class="title">searching for {query|escape}</div>
35 36
36 37 {entries}
37 38
38 39 {footer}
@@ -1,41 +1,42
1 1 {header}
2 2 <title>{repo|escape}: Shortlog</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / shortlog
12 12 </div>
13 13
14 14 <form action="{url}log">
15 15 {sessionvars%hiddenformentry}
16 16 <div class="search">
17 17 <input type="text" name="rev" />
18 18 </div>
19 19 </form>
20 20 <div class="page_nav">
21 21 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
22 22 shortlog |
23 23 <a href="{url}log/{rev}{sessionvars%urlparameter}">changelog</a> |
24 24 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
25 25 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
26 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
26 27 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
27 28 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>{archives%archiveentry} |
28 29 <a href="{url}help{sessionvars%urlparameter}">help</a>
29 30 <br/>{changenav%navshort}<br/>
30 31 </div>
31 32
32 33 <div class="title">&nbsp;</div>
33 34 <table cellspacing="0">
34 35 {entries%shortlogentry}
35 36 </table>
36 37
37 38 <div class="page_nav">
38 39 {changenav%navshort}
39 40 </div>
40 41
41 42 {footer}
@@ -1,59 +1,60
1 1 {header}
2 2 <title>{repo|escape}: Summary</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-log" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-log" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / summary
12 12
13 13 <form action="{url}log">
14 14 {sessionvars%hiddenformentry}
15 15 <div class="search">
16 16 <input type="text" name="rev" />
17 17 </div>
18 18 </form>
19 19 </div>
20 20
21 21 <div class="page_nav">
22 22 summary |
23 23 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
24 24 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
25 25 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
26 26 <a href="{url}tags{sessionvars%urlparameter}">tags</a> |
27 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
27 28 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
28 29 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>{archives%archiveentry} |
29 30 <a href="{url}help{sessionvars%urlparameter}">help</a>
30 31 <br/>
31 32 </div>
32 33
33 34 <div class="title">&nbsp;</div>
34 35 <table cellspacing="0">
35 36 <tr><td>description</td><td>{desc}</td></tr>
36 37 <tr><td>owner</td><td>{owner|obfuscate}</td></tr>
37 38 <tr><td>last change</td><td>{lastchange|rfc822date}</td></tr>
38 39 </table>
39 40
40 41 <div><a class="title" href="{url}shortlog{sessionvars%urlparameter}">changes</a></div>
41 42 <table cellspacing="0">
42 43 {shortlog}
43 44 <tr class="light"><td colspan="4"><a class="list" href="{url}shortlog{sessionvars%urlparameter}">...</a></td></tr>
44 45 </table>
45 46
46 47 <div><a class="title" href="{url}tags{sessionvars%urlparameter}">tags</a></div>
47 48 <table cellspacing="0">
48 49 {tags}
49 50 <tr class="light"><td colspan="3"><a class="list" href="{url}tags{sessionvars%urlparameter}">...</a></td></tr>
50 51 </table>
51 52
52 53 <div><a class="title" href="#">branches</a></div>
53 54 <table cellspacing="0">
54 55 {branches%branchentry}
55 56 <tr class="light">
56 57 <td colspan="4"><a class="list" href="#">...</a></td>
57 58 </tr>
58 59 </table>
59 60 {footer}
@@ -1,31 +1,32
1 1 {header}
2 2 <title>{repo|escape}: Tags</title>
3 3 <link rel="alternate" type="application/atom+xml"
4 4 href="{url}atom-tags" title="Atom feed for {repo|escape}"/>
5 5 <link rel="alternate" type="application/rss+xml"
6 6 href="{url}rss-tags" title="RSS feed for {repo|escape}"/>
7 7 </head>
8 8 <body>
9 9
10 10 <div class="page_header">
11 11 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / tags
12 12 </div>
13 13
14 14 <div class="page_nav">
15 15 <a href="{url}summary{sessionvars%urlparameter}">summary</a> |
16 16 <a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a> |
17 17 <a href="{url}log{sessionvars%urlparameter}">changelog</a> |
18 18 <a href="{url}graph{sessionvars%urlparameter}">graph</a> |
19 19 tags |
20 <a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a> |
20 21 <a href="{url}branches{sessionvars%urlparameter}">branches</a> |
21 22 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a> |
22 23 <a href="{url}help{sessionvars%urlparameter}">help</a>
23 24 <br/>
24 25 </div>
25 26
26 27 <div class="title">&nbsp;</div>
27 28 <table cellspacing="0">
28 29 {entries%tagentry}
29 30 </table>
30 31
31 32 {footer}
@@ -1,37 +1,38
1 1 {header}
2 2 <title>{repo|escape}: Branches</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / Branches</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}changelog{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li class="current">branches</li>
27 28 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a></li>
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <h2 class="no-link no-border">branches</h2>
33 34 <table cellspacing="0">
34 35 {entries%branchentry}
35 36 </table>
36 37
37 38 {footer}
@@ -1,41 +1,42
1 1 {header}
2 2 <title>{repo|escape}: changelog</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / changelog</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li class="current">changelog</li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>{archives%archiveentry}</li>
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <h2 class="no-link no-border">changelog</h2>
33 34 <div>
34 35 {entries%changelogentry}
35 36 </div>
36 37
37 38 <div class="page-path">
38 39 {changenav%nav}
39 40 </div>
40 41
41 42 {footer}
@@ -1,64 +1,65
1 1 {header}
2 2 <title>{repo|escape}: changeset {rev}:{node|short}</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / files</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}changelog{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a></li>
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <ul class="submenu">
33 34 <li class="current">changeset</li>
34 35 <li><a href="{url}raw-rev/{node|short}">raw</a> {archives%archiveentry}</li>
35 36 </ul>
36 37
37 38 <h2 class="no-link no-border">changeset</h2>
38 39
39 40 <h3 class="changeset"><a href="{url}raw-rev/{node|short}">{desc|strip|escape|firstline|nonempty} <span class="logtags">{inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}{bookmarks%bookmarktag}</span></a></h3>
40 41 <p class="changeset-age"><span>{date|age}</span></p>
41 42
42 43 <dl class="overview">
43 44 <dt>author</dt>
44 45 <dd>{author|obfuscate}</dd>
45 46 <dt>date</dt>
46 47 <dd>{date|date}</dd>
47 48 {branch%changesetbranch}
48 49 <dt>changeset {rev}</dt>
49 50 <dd>{node|short}</dd>
50 51 {parent%changesetparent}
51 52 {child%changesetchild}
52 53 </dl>
53 54
54 55 <p class="description">{desc|strip|escape|addbreaks|nonempty}</p>
55 56
56 57 <table>
57 58 {files}
58 59 </table>
59 60
60 61 <div class="diff">
61 62 {diff}
62 63 </div>
63 64
64 65 {footer}
@@ -1,35 +1,36
1 1 {header}
2 2 <title>{repo|escape}: Error</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / Not found: {repo|escape}</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li class="current">summary</li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}log{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a></li>
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <h2 class="no-link no-border">An error occurred while processing your request</h2>
33 34 <p class="normal">{error|escape}</p>
34 35
35 36 {footer}
@@ -1,64 +1,65
1 1 {header}
2 2 <title>{repo|escape}: {file|escape}@{node|short} (annotated)</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / annotate</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}log{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">files</a></li>
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <ul class="submenu">
33 34 <li><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a></li>
34 35 <li><a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">revisions</a></li>
35 36 <li class="current">annotate</li>
36 37 <li><a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a></li>
37 38 <li><a href="{url}raw-annotate/{node|short}/{file|urlescape}">raw</a></li>
38 39 </ul>
39 40
40 41 <h2 class="no-link no-border">{file|escape}@{node|short} (annotated)</h2>
41 42 <h3 class="changeset">{file|escape}</h3>
42 43 <p class="changeset-age"><span>{date|age}</span></p>
43 44
44 45 <dl class="overview">
45 46 <dt>author</dt>
46 47 <dd>{author|obfuscate}</dd>
47 48 <dt>date</dt>
48 49 <dd>{date|date}</dd>
49 50 {branch%filerevbranch}
50 51 <dt>changeset {rev}</dt>
51 52 <dd><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></dd>
52 53 {parent%fileannotateparent}
53 54 {child%fileannotatechild}
54 55 <dt>permissions</dt>
55 56 <dd>{permissions|permissions}</dd>
56 57 </dl>
57 58
58 59 <p class="description">{desc|strip|escape|addbreaks|nonempty}</p>
59 60
60 61 <table class="annotated">
61 62 {annotate%annotateline}
62 63 </table>
63 64
64 65 {footer}
@@ -1,55 +1,56
1 1 {header}
2 2 <title>{repo|escape}: diff {file|escape}</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / file diff</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}log{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">files</a></li>
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <ul class="submenu">
33 34 <li><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a></li>
34 35 <li><a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">revisions</a></li>
35 36 <li><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a></li>
36 37 <li class="current">diff</li>
37 38 <li><a href="{url}raw-diff/{node|short}/{file|urlescape}">raw</a></li>
38 39 </ul>
39 40
40 41 <h2 class="no-link no-border">diff: {file|escape}</h2>
41 42 <h3 class="changeset">{file|escape}</h3>
42 43
43 44 <dl class="overview">
44 45 {branch%filerevbranch}
45 46 <dt>changeset {rev}</dt>
46 47 <dd><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></dd>
47 48 {parent%filediffparent}
48 49 {child%filediffchild}
49 50 </dl>
50 51
51 52 <div class="diff">
52 53 {diff}
53 54 </div>
54 55
55 56 {footer}
@@ -1,50 +1,51
1 1 {header}
2 2 <title>{repo|escape}: File revisions</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / file revisions</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}log{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">files</a></li>
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <ul class="submenu">
33 34 <li><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a></li>
34 35 <li class="current">revisions</li>
35 36 <li><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a></li>
36 37 <li><a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a></li>
37 38 <li><a href="{url}rss-log/tip/{file|urlescape}">rss</a></li>
38 39 </ul>
39 40
40 41 <h2 class="no-link no-border">{file|urlescape}</h2>
41 42
42 43 <table>
43 44 {entries%filelogentry}
44 45 </table>
45 46
46 47 <div class="page-path">
47 48 {nav%filenav}
48 49 </div>
49 50
50 51 {footer}
@@ -1,64 +1,65
1 1 {header}
2 2 <title>{repo|escape}: {file|escape}@{node|short}</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / file revision</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}changelog{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">files</a></li>
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <ul class="submenu">
33 34 <li class="current">file</li>
34 35 <li><a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">revisions</a></li>
35 36 <li><a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a></li>
36 37 <li><a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a></li>
37 38 <li><a href="{url}raw-file/{node|short}/{file|urlescape}">raw</a></li>
38 39 </ul>
39 40
40 41 <h2 class="no-link no-border">{file|escape}@{node|short}</h2>
41 42 <h3 class="changeset">{file|escape}</h3>
42 43 <p class="changeset-age"><span>{date|age}</span></p>
43 44
44 45 <dl class="overview">
45 46 <dt>author</dt>
46 47 <dd>{author|obfuscate}</dd>
47 48 <dt>date</dt>
48 49 <dd>{date|date}</dd>
49 50 {branch%filerevbranch}
50 51 <dt>changeset {rev}</dt>
51 52 <dd><a class="list" href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></dd>
52 53 {parent%filerevparent}
53 54 {child%filerevchild}
54 55 <dt>permissions</dt>
55 56 <dd>{permissions|permissions}</dd>
56 57 </dl>
57 58
58 59 <p class="description">{desc|strip|escape|addbreaks|nonempty}</p>
59 60
60 61 <div class="source">
61 62 {text%fileline}
62 63 </div>
63 64
64 65 {footer}
@@ -1,125 +1,126
1 1 {header}
2 2 <title>{repo|escape}: graph</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 <!--[if IE]><script type="text/javascript" src="{staticurl}excanvas.js"></script><![endif]-->
6 6 </head>
7 7
8 8 <body>
9 9 <div id="container">
10 10 <div class="page-header">
11 11 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / graph</h1>
12 12
13 13 <form action="{url}log">
14 14 {sessionvars%hiddenformentry}
15 15 <dl class="search">
16 16 <dt><label>Search: </label></dt>
17 17 <dd><input type="text" name="rev" /></dd>
18 18 </dl>
19 19 </form>
20 20
21 21 <ul class="page-nav">
22 22 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
23 23 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
24 24 <li><a href="{url}changelog{sessionvars%urlparameter}">changelog</a></li>
25 25 <li class="current">graph</li>
26 26 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
27 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
27 28 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
28 29 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a></li>
29 30 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
30 31 </ul>
31 32 </div>
32 33
33 34 <h2 class="no-link no-border">graph</h2>
34 35
35 36 <div id="noscript">The revision graph only works with JavaScript-enabled browsers.</div>
36 37 <div id="wrapper">
37 38 <ul id="nodebgs"></ul>
38 39 <canvas id="graph" width="480" height="{canvasheight}"></canvas>
39 40 <ul id="graphnodes"></ul>
40 41 </div>
41 42
42 43 <script type="text/javascript" src="{staticurl}graph.js"></script>
43 44 <script>
44 45 <!-- hide script content
45 46
46 47 document.getElementById('noscript').style.display = 'none';
47 48
48 49 var data = {jsdata|json};
49 50 var graph = new Graph();
50 51 graph.scale({bg_height});
51 52
52 53 graph.edge = function(x0, y0, x1, y1, color) \{
53 54
54 55 this.setColor(color, 0.0, 0.65);
55 56 this.ctx.beginPath();
56 57 this.ctx.moveTo(x0, y0);
57 58 this.ctx.lineTo(x1, y1);
58 59 this.ctx.stroke();
59 60
60 61 }
61 62
62 63 var revlink = '<li style="_STYLE"><span class="desc">';
63 64 revlink += '<a href="{url}rev/_NODEID{sessionvars%urlparameter}" title="_NODEID">_DESC</a>';
64 65 revlink += '</span>_TAGS<span class="info">_DATE, by _USER</span></li>';
65 66
66 67 graph.vertex = function(x, y, color, parity, cur) \{
67 68
68 69 this.ctx.beginPath();
69 70 color = this.setColor(color, 0.25, 0.75);
70 71 this.ctx.arc(x, y, radius, 0, Math.PI * 2, true);
71 72 this.ctx.fill();
72 73
73 74 var bg = '<li class="bg parity' + parity + '"></li>';
74 75 var left = (this.columns + 1) * this.bg_height;
75 76 var nstyle = 'padding-left: ' + left + 'px;';
76 77 var item = revlink.replace(/_STYLE/, nstyle);
77 78 item = item.replace(/_PARITY/, 'parity' + parity);
78 79 item = item.replace(/_NODEID/, cur[0]);
79 80 item = item.replace(/_NODEID/, cur[0]);
80 81 item = item.replace(/_DESC/, cur[3]);
81 82 item = item.replace(/_USER/, cur[4]);
82 83 item = item.replace(/_DATE/, cur[5]);
83 84
84 85 var tagspan = '';
85 86 if (cur[7].length || cur[8].length || (cur[6][0] != 'default' || cur[6][1])) \{
86 87 tagspan = '<span class="logtags">';
87 88 if (cur[6][1]) \{
88 89 tagspan += '<span class="branchtag" title="' + cur[6][0] + '">';
89 90 tagspan += cur[6][0] + '</span> ';
90 91 } else if (!cur[6][1] && cur[6][0] != 'default') \{
91 92 tagspan += '<span class="inbranchtag" title="' + cur[6][0] + '">';
92 93 tagspan += cur[6][0] + '</span> ';
93 94 }
94 95 if (cur[7].length) \{
95 96 for (var t in cur[7]) \{
96 97 var tag = cur[7][t];
97 98 tagspan += '<span class="tagtag">' + tag + '</span> ';
98 99 }
99 100 }
100 101 if (cur[8].length) \{
101 102 for (var t in cur[8]) \{
102 103 var bookmark = cur[8][t];
103 104 tagspan += '<span class="bookmarktag">' + bookmark + '</span> ';
104 105 }
105 106 }
106 107 tagspan += '</span>';
107 108 }
108 109
109 110 item = item.replace(/_TAGS/, tagspan);
110 111 return [bg, item];
111 112
112 113 }
113 114
114 115 graph.render(data);
115 116
116 117 // stop hiding script -->
117 118 </script>
118 119
119 120 <div class="page-path">
120 121 <a href="{url}graph/{rev}{lessvars%urlparameter}">less</a>
121 122 <a href="{url}graph/{rev}{morevars%urlparameter}">more</a>
122 123 | {changenav%navgraph}
123 124 </div>
124 125
125 126 {footer}
@@ -1,37 +1,38
1 1 {header}
2 2 <title>{repo|escape}: Branches</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / Branches</h1>
10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / Help</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}changelog{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a></li>
28 29 <li class="current">help</li>
29 30 </ul>
30 31 </div>
31 32
32 33 <h2 class="no-link no-border">branches</h2>
33 34 <pre>
34 35 {doc|escape}
35 36 </pre>
36 37
37 38 {footer}
@@ -1,44 +1,45
1 1 {header}
2 2 <title>{repo|escape}: Branches</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / Branches</h1>
10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / Help</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}changelog{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}help{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a></li>
28 29 <li class="current">help</li>
29 30 </ul>
30 31 </div>
31 32
32 33 <h2 class="no-link no-border">branches</h2>
33 34 <table cellspacing="0">
34 35 <tr><td colspan="2"><h2><a name="main" href="#topics">Topics</a></h2></td></tr>
35 36 {topics % helpentry}
36 37
37 38 <tr><td colspan="2"><h2><a name="main" href="#main">Main Commands</a></h2></td></tr>
38 39 {earlycommands % helpentry}
39 40
40 41 <tr><td colspan="2"><h2><a name="other" href="#other">Other Commands</a></h2></td></tr>
41 42 {othercommands % helpentry}
42 43 </table>
43 44
44 45 {footer}
@@ -1,52 +1,53
1 1 {header}
2 2 <title>{repo|escape}: files</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / files</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}changelog{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li class="current">files</li>
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <ul class="submenu">
33 34 <li><a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a> {archives%archiveentry}</li>
34 35 {archives%archiveentry}
35 36 </ul>
36 37
37 38 <h2 class="no-link no-border">files</h2>
38 39 <p class="files">{path|escape} <span class="logtags">{inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}{bookmarks%bookmarktag}</span></p>
39 40
40 41 <table>
41 42 <tr class="parity{upparity}">
42 43 <td>drwxr-xr-x</td>
43 44 <td></td>
44 45 <td></td>
45 46 <td><a href="{url}file/{node|short}{up|urlescape}{sessionvars%urlparameter}">[up]</a></td>
46 47 <td class="link">&nbsp;</td>
47 48 </tr>
48 49 {dentries%direntry}
49 50 {fentries%fileentry}
50 51 </table>
51 52
52 53 {footer}
@@ -1,227 +1,238
1 1 default = 'summary'
2 2 mimetype = 'text/html; charset={encoding}'
3 3 header = header.tmpl
4 4 footer = footer.tmpl
5 5 search = search.tmpl
6 6 changelog = changelog.tmpl
7 7 summary = summary.tmpl
8 8 error = error.tmpl
9 9 notfound = notfound.tmpl
10 10
11 11 help = help.tmpl
12 12 helptopics = helptopics.tmpl
13 13
14 14 helpentry = '<tr><td><a href="{url}help/{topic|escape}{sessionvars%urlparameter}">{topic|escape}</a></td><td>{summary|escape}</td></tr>'
15 15
16 16 naventry = '<a href="{url}log/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
17 17 navshortentry = '<a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
18 18 navgraphentry = '<a href="{url}graph/{node|short}{sessionvars%urlparameter}">{label|escape}</a> '
19 19 filenaventry = '<a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{label|escape}</a>'
20 20 filedifflink = '<a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a> '
21 21 filenodelink = '
22 22 <tr class="parity{parity}">
23 23 <td><a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a></td>
24 24 <td></td>
25 25 <td>
26 26 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a> |
27 27 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a> |
28 28 <a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a> |
29 29 <a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">revisions</a>
30 30 </td>
31 31 </tr>'
32 32 filenolink = '
33 33 <tr class="parity{parity}">
34 34 <td>
35 35 <a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{file|escape}</a></td><td></td><td>file |
36 36 annotate |
37 37 <a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a> |
38 38 <a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">revisions</a>
39 39 </td>
40 40 </tr>'
41 41
42 42 nav = '{before%naventry} {after%naventry}'
43 43 navshort = '{before%navshortentry}{after%navshortentry}'
44 44 navgraph = '{before%navgraphentry}{after%navgraphentry}'
45 45 filenav = '{before%filenaventry}{after%filenaventry}'
46 46
47 47 fileellipses = '...'
48 48 changelogentry = changelogentry.tmpl
49 49 searchentry = changelogentry.tmpl
50 50 changeset = changeset.tmpl
51 51 manifest = manifest.tmpl
52 52 direntry = '
53 53 <tr class="parity{parity}">
54 54 <td>drwxr-xr-x</td>
55 55 <td></td>
56 56 <td></td>
57 57 <td><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">{basename|escape}</a></td>
58 58 <td><a href="{url}file/{node|short}{path|urlescape}{sessionvars%urlparameter}">files</a></td>
59 59 </tr>'
60 60 fileentry = '
61 61 <tr class="parity{parity}">
62 62 <td>{permissions|permissions}</td>
63 63 <td>{date|isodate}</td>
64 64 <td>{size}</td>
65 65 <td><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{basename|escape}</a></td>
66 66 <td>
67 67 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a> |
68 68 <a href="{url}log/{node|short}/{file|urlescape}{sessionvars%urlparameter}">revisions</a> |
69 69 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a>
70 70 </td>
71 71 </tr>'
72 72 filerevision = filerevision.tmpl
73 73 fileannotate = fileannotate.tmpl
74 74 filediff = filediff.tmpl
75 75 filelog = filelog.tmpl
76 76 fileline = '
77 77 <div style="font-family:monospace" class="parity{parity}">
78 78 <pre><a class="linenr" href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</pre>
79 79 </div>'
80 80 annotateline = '
81 81 <tr class="parity{parity}">
82 82 <td class="linenr">
83 83 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}#{targetline}"
84 84 title="{node|short}: {desc|escape|firstline}">{author|user}@{rev}</a>
85 85 </td>
86 86 <td class="lineno">
87 87 <a href="#{lineid}" id="{lineid}">{linenumber}</a>
88 88 </td>
89 89 <td class="source">{line|escape}</td>
90 90 </tr>'
91 91 difflineplus = '<span style="color:#008800;"><a class="linenr" href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</span>'
92 92 difflineminus = '<span style="color:#cc0000;"><a class="linenr" href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</span>'
93 93 difflineat = '<span style="color:#990099;"><a class="linenr" href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</span>'
94 94 diffline = '<span><a class="linenr" href="#{lineid}" id="{lineid}">{linenumber}</a> {line|escape}</span>'
95 95 changelogparent = '
96 96 <tr>
97 97 <th class="parent">parent {rev}:</th>
98 98 <td class="parent">
99 99 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a>
100 100 </td>
101 101 </tr>'
102 102 changesetbranch = '<dt>branch</dt><dd>{name}</dd>'
103 103 changesetparent = '
104 104 <dt>parent {rev}</dt>
105 105 <dd><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></dd>'
106 106 filerevbranch = '<dt>branch</dt><dd>{name}</dd>'
107 107 filerevparent = '
108 108 <dt>parent {rev}</dt>
109 109 <dd>
110 110 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">
111 111 {rename%filerename}{node|short}
112 112 </a>
113 113 </dd>'
114 114 filerename = '{file|escape}@'
115 115 filelogrename = '| <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">base</a>'
116 116 fileannotateparent = '
117 117 <dt>parent {rev}</dt>
118 118 <dd>
119 119 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">
120 120 {rename%filerename}{node|short}
121 121 </a>
122 122 </dd>'
123 123 changelogchild = '
124 124 <dt>child {rev}:</dt>
125 125 <dd><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></dd>'
126 126 changesetchild = '
127 127 <dt>child {rev}</dt>
128 128 <dd><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a></dd>'
129 129 filerevchild = '
130 130 <dt>child {rev}</dt>
131 131 <dd>
132 132 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a>
133 133 </dd>'
134 134 fileannotatechild = '
135 135 <dt>child {rev}</dt>
136 136 <dd>
137 137 <a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a>
138 138 </dd>'
139 139 tags = tags.tmpl
140 140 tagentry = '
141 141 <tr class="parity{parity}">
142 142 <td class="nowrap">{date|age}</td>
143 143 <td><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{tag|escape}</a></td>
144 144 <td class="nowrap">
145 145 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a> |
146 146 <a href="{url}log/{node|short}{sessionvars%urlparameter}">changelog</a> |
147 147 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>
148 148 </td>
149 149 </tr>'
150 bookmarks = bookmarks.tmpl
151 bookmarkentry = '
152 <tr class="parity{parity}">
153 <td class="nowrap">{date|age}</td>
154 <td><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{bookmark|escape}</a></td>
155 <td class="nowrap">
156 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a> |
157 <a href="{url}log/{node|short}{sessionvars%urlparameter}">changelog</a> |
158 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>
159 </td>
160 </tr>'
150 161 branches = branches.tmpl
151 162 branchentry = '
152 163 <tr class="parity{parity}">
153 164 <td class="nowrap">{date|age}</td>
154 165 <td><a href="{url}shortlog/{node|short}{sessionvars%urlparameter}">{node|short}</a></td>
155 166 <td class="{status}">{branch|escape}</td>
156 167 <td class="nowrap">
157 168 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a> |
158 169 <a href="{url}log/{node|short}{sessionvars%urlparameter}">changelog</a> |
159 170 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>
160 171 </td>
161 172 </tr>'
162 173 diffblock = '<pre>{lines}</pre>'
163 174 filediffparent = '
164 175 <dt>parent {rev}</dt>
165 176 <dd><a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></dd>'
166 177 filelogparent = '
167 178 <tr>
168 179 <td align="right">parent {rev}:&nbsp;</td>
169 180 <td><a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td>
170 181 </tr>'
171 182 filediffchild = '
172 183 <dt>child {rev}</dt>
173 184 <dd><a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></dd>'
174 185 filelogchild = '
175 186 <tr>
176 187 <td align="right">child {rev}:&nbsp;</td>
177 188 <td><a href="{url}file{node|short}/{file|urlescape}{sessionvars%urlparameter}">{node|short}</a></td>
178 189 </tr>'
179 190 shortlog = shortlog.tmpl
180 191 tagtag = '<span class="tagtag" title="{name}">{name}</span> '
181 192 branchtag = '<span class="branchtag" title="{name}">{name}</span> '
182 193 inbranchtag = '<span class="inbranchtag" title="{name}">{name}</span> '
183 194 bookmarktag = '<span class="bookmarktag" title="{name}">{name}</span> '
184 195 shortlogentry = '
185 196 <tr class="parity{parity}">
186 197 <td class="nowrap">{date|age}</td>
187 198 <td>{author|person}</td>
188 199 <td>
189 200 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">
190 201 {desc|strip|firstline|escape|nonempty}
191 202 <span class="logtags">{inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}{bookmarks%bookmarktag}</span>
192 203 </a>
193 204 </td>
194 205 <td class="nowrap">
195 206 <a href="{url}rev/{node|short}{sessionvars%urlparameter}">changeset</a> |
196 207 <a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>
197 208 </td>
198 209 </tr>'
199 210 filelogentry = '
200 211 <tr class="parity{parity}">
201 212 <td class="nowrap">{date|age}</td>
202 213 <td><a href="{url}rev/{node|short}{sessionvars%urlparameter}">{desc|strip|firstline|escape|nonempty}</a></td>
203 214 <td class="nowrap">
204 215 <a href="{url}file/{node|short}/{file|urlescape}{sessionvars%urlparameter}">file</a>&nbsp;|&nbsp;<a href="{url}diff/{node|short}/{file|urlescape}{sessionvars%urlparameter}">diff</a>&nbsp;|&nbsp;<a href="{url}annotate/{node|short}/{file|urlescape}{sessionvars%urlparameter}">annotate</a>
205 216 {rename%filelogrename}
206 217 </td>
207 218 </tr>'
208 219 archiveentry = '<li><a href="{url}archive/{node|short}{extension}">{type|escape}</a></li>'
209 220 indexentry = '
210 221 <tr class="parity{parity}">
211 222 <td><a href="{url}{sessionvars%urlparameter}">{name|escape}</a></td>
212 223 <td>{description}</td>
213 224 <td>{contact|obfuscate}</td>
214 225 <td>{lastchange|age}</td>
215 226 <td class="indexlinks">{archives%indexarchiveentry}</td>
216 227 <td>
217 228 <div class="rss_logo">
218 229 <a href="{url}rss-log">RSS</a>
219 230 <a href="{url}atom-log">Atom</a>
220 231 </div>
221 232 </td>
222 233 </tr>\n'
223 234 indexarchiveentry = '<a href="{url}archive/{node|short}{extension}">{type|escape}</a> '
224 235 index = index.tmpl
225 236 urlparameter = '{separator}{name}={value|urlescape}'
226 237 hiddenformentry = '<input type="hidden" name="{name}" value="{value|escape}" />'
227 238 graph = graph.tmpl
@@ -1,36 +1,37
1 1 {header}
2 2 <title>{repo|escape}: Mercurial repository not found</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / Not found: {repo|escape}</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li class="current">summary</li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}log{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>{archives%archiveentry}</li>
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <h2 class="no-link no-border">Not Found</h2>
33 34 <p class="normal">The specified repository "{repo|escape}" is unknown, sorry.</p>
34 35 <p class="normal">Please go back to the <a href="{url}">main repository list page</a>.</p>
35 36
36 37 {footer}
@@ -1,35 +1,36
1 1 {header}
2 2 <title>{repo|escape}: Search</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / search</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" value="{query|escape}" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}log{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a>{archives%archiveentry}
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <h2 class="no-link no-border">searching for {query|escape}</h2>
33 34 {entries}
34 35
35 36 {footer}
@@ -1,43 +1,44
1 1 {header}
2 2 <title>{repo|escape}: shortlog</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / shortlog</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li class="current">shortlog</li>
23 23 <li><a href="{url}log{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a></li>
28 29 {archives%archiveentry}
29 30 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
30 31 </ul>
31 32 </div>
32 33
33 34 <h2 class="no-link no-border">shortlog</h2>
34 35
35 36 <table>
36 37 {entries%shortlogentry}
37 38 </table>
38 39
39 40 <div class="page-path">
40 41 {changenav%navshort}
41 42 </div>
42 43
43 44 {footer}
@@ -1,67 +1,68
1 1 {header}
2 2 <title>{repo|escape}: Summary</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / summary</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li class="current">summary</li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}log{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li><a href="{url}tags{sessionvars%urlparameter}">tags</a></li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a></li>
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <h2 class="no-link no-border">Mercurial Repository Overview</h2>
33 34 <dl class="overview">
34 35 <dt>name</dt>
35 36 <dd>{repo|escape}</dd>
36 37 <dt>description</dt>
37 38 <dd>{desc}</dd>
38 39 <dt>owner</dt>
39 40 <dd>{owner|obfuscate}</dd>
40 41 <dt>last change</dt>
41 42 <dd>{lastchange|rfc822date}</dd>
42 43 </dl>
43 44
44 45 <h2><a href="{url}shortlog{sessionvars%urlparameter}">Changes</a></h2>
45 46 <table>
46 47 {shortlog}
47 48 <tr class="light">
48 49 <td colspan="4"><a class="list" href="{url}shortlog{sessionvars%urlparameter}">...</a></td>
49 50 </tr>
50 51 </table>
51 52
52 53 <h2><a href="{url}tags{sessionvars%urlparameter}">Tags</a></h2>
53 54 <table>
54 55 {tags}
55 56 <tr class="light">
56 57 <td colspan="3"><a class="list" href="{url}tags{sessionvars%urlparameter}">...</a></td>
57 58 </tr>
58 59 </table>
59 60
60 61 <h2 class="no-link">Branches</h2>
61 62 <table>
62 63 {branches%branchentry}
63 64 <tr class="light">
64 65 <td colspan="4"><a class="list" href="#">...</a></td>
65 66 </tr>
66 67 </table>
67 68 {footer}
@@ -1,37 +1,38
1 1 {header}
2 2 <title>{repo|escape}: Tags</title>
3 3 <link rel="alternate" type="application/atom+xml" href="{url}atom-log" title="Atom feed for {repo|escape}"/>
4 4 <link rel="alternate" type="application/rss+xml" href="{url}rss-log" title="RSS feed for {repo|escape}"/>
5 5 </head>
6 6
7 7 <body>
8 8 <div id="container">
9 9 <div class="page-header">
10 10 <h1><a href="{url}summary{sessionvars%urlparameter}">{repo|escape}</a> / Tags</h1>
11 11
12 12 <form action="{url}log">
13 13 {sessionvars%hiddenformentry}
14 14 <dl class="search">
15 15 <dt><label>Search: </label></dt>
16 16 <dd><input type="text" name="rev" /></dd>
17 17 </dl>
18 18 </form>
19 19
20 20 <ul class="page-nav">
21 21 <li><a href="{url}summary{sessionvars%urlparameter}">summary</a></li>
22 22 <li><a href="{url}shortlog{sessionvars%urlparameter}">shortlog</a></li>
23 23 <li><a href="{url}changelog{sessionvars%urlparameter}">changelog</a></li>
24 24 <li><a href="{url}graph/{node|short}{sessionvars%urlparameter}">graph</a></li>
25 25 <li class="current">tags</li>
26 <li><a href="{url}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
26 27 <li><a href="{url}branches{sessionvars%urlparameter}">branches</a></li>
27 28 <li><a href="{url}file/{node|short}{sessionvars%urlparameter}">files</a></li>
28 29 <li><a href="{url}help{sessionvars%urlparameter}">help</a></li>
29 30 </ul>
30 31 </div>
31 32
32 33 <h2 class="no-link no-border">tags</h2>
33 34 <table cellspacing="0">
34 35 {entries%tagentry}
35 36 </table>
36 37
37 38 {footer}
@@ -1,10 +1,12
1 1 default = 'changelog'
2 2 mimetype = 'text/xml; charset={encoding}'
3 3 header = header.tmpl
4 4 changelog = changelog.tmpl
5 5 changelogentry = changelogentry.tmpl
6 6 filelog = filelog.tmpl
7 7 filelogentry = filelogentry.tmpl
8 8 tags = tags.tmpl
9 9 tagentry = tagentry.tmpl
10 bookmarks = bookmarks.tmpl
11 bookmarkentry = bookmarkentry.tmpl
10 12 error = error.tmpl
@@ -1,124 +1,128
1 1 body { font-family: sans-serif; font-size: 12px; margin:0px; border:solid #d9d8d1; border-width:1px; margin:10px; }
2 2 a { color:#0000cc; }
3 3 a:hover, a:visited, a:active { color:#880000; }
4 4 div.page_header { height:25px; padding:8px; font-size:18px; font-weight:bold; background-color:#d9d8d1; }
5 5 div.page_header a:visited { color:#0000cc; }
6 6 div.page_header a:hover { color:#880000; }
7 7 div.page_nav { padding:8px; }
8 8 div.page_nav a:visited { color:#0000cc; }
9 9 div.page_path { padding:8px; border:solid #d9d8d1; border-width:0px 0px 1px}
10 10 div.page_footer { padding:4px 8px; background-color: #d9d8d1; }
11 11 div.page_footer_text { float:left; color:#555555; font-style:italic; }
12 12 div.page_body { padding:8px; }
13 13 div.title, a.title {
14 14 display:block; padding:6px 8px;
15 15 font-weight:bold; background-color:#edece6; text-decoration:none; color:#000000;
16 16 }
17 17 a.title:hover { background-color: #d9d8d1; }
18 18 div.title_text { padding:6px 0px; border: solid #d9d8d1; border-width:0px 0px 1px; }
19 19 div.log_body { padding:8px 8px 8px 150px; }
20 20 .age { white-space:nowrap; }
21 21 span.age { position:relative; float:left; width:142px; font-style:italic; }
22 22 div.log_link {
23 23 padding:0px 8px;
24 24 font-size:10px; font-family:sans-serif; font-style:normal;
25 25 position:relative; float:left; width:136px;
26 26 }
27 27 div.list_head { padding:6px 8px 4px; border:solid #d9d8d1; border-width:1px 0px 0px; font-style:italic; }
28 28 a.list { text-decoration:none; color:#000000; }
29 29 a.list:hover { text-decoration:underline; color:#880000; }
30 30 table { padding:8px 4px; }
31 31 th { padding:2px 5px; font-size:12px; text-align:left; }
32 32 tr.light:hover, .parity0:hover { background-color:#edece6; }
33 33 tr.dark, .parity1 { background-color:#f6f6f0; }
34 34 tr.dark:hover, .parity1:hover { background-color:#edece6; }
35 35 td { padding:2px 5px; font-size:12px; vertical-align:top; }
36 36 td.closed { background-color: #99f; }
37 37 td.link { padding:2px 5px; font-family:sans-serif; font-size:10px; }
38 38 td.indexlinks { white-space: nowrap; }
39 39 td.indexlinks a {
40 40 padding: 2px 5px; line-height: 10px;
41 41 border: 1px solid;
42 42 color: #ffffff; background-color: #7777bb;
43 43 border-color: #aaaadd #333366 #333366 #aaaadd;
44 44 font-weight: bold; text-align: center; text-decoration: none;
45 45 font-size: 10px;
46 46 }
47 47 td.indexlinks a:hover { background-color: #6666aa; }
48 48 div.pre { font-family:monospace; font-size:12px; white-space:pre; }
49 49 div.diff_info { font-family:monospace; color:#000099; background-color:#edece6; font-style:italic; }
50 50 div.index_include { border:solid #d9d8d1; border-width:0px 0px 1px; padding:12px 8px; }
51 51 div.search { margin:4px 8px; position:absolute; top:56px; right:12px }
52 52 .linenr { color:#999999; text-decoration:none }
53 53 div.rss_logo { float: right; white-space: nowrap; }
54 54 div.rss_logo a {
55 55 padding:3px 6px; line-height:10px;
56 56 border:1px solid; border-color:#fcc7a5 #7d3302 #3e1a01 #ff954e;
57 57 color:#ffffff; background-color:#ff6600;
58 58 font-weight:bold; font-family:sans-serif; font-size:10px;
59 59 text-align:center; text-decoration:none;
60 60 }
61 61 div.rss_logo a:hover { background-color:#ee5500; }
62 62 pre { margin: 0; }
63 63 span.logtags span {
64 64 padding: 0px 4px;
65 65 font-size: 10px;
66 66 font-weight: normal;
67 67 border: 1px solid;
68 68 background-color: #ffaaff;
69 69 border-color: #ffccff #ff00ee #ff00ee #ffccff;
70 70 }
71 71 span.logtags span.tagtag {
72 72 background-color: #ffffaa;
73 73 border-color: #ffffcc #ffee00 #ffee00 #ffffcc;
74 74 }
75 75 span.logtags span.branchtag {
76 76 background-color: #aaffaa;
77 77 border-color: #ccffcc #00cc33 #00cc33 #ccffcc;
78 78 }
79 79 span.logtags span.inbranchtag {
80 80 background-color: #d5dde6;
81 81 border-color: #e3ecf4 #9398f4 #9398f4 #e3ecf4;
82 82 }
83 span.logtags span.bookmarktag {
84 background-color: #afdffa;
85 border-color: #ccecff #46ace6 #46ace6 #ccecff;
86 }
83 87
84 88 /* Graph */
85 89 div#wrapper {
86 90 position: relative;
87 91 margin: 0;
88 92 padding: 0;
89 93 margin-top: 3px;
90 94 }
91 95
92 96 canvas {
93 97 position: absolute;
94 98 z-index: 5;
95 99 top: -0.9em;
96 100 margin: 0;
97 101 }
98 102
99 103 ul#nodebgs {
100 104 list-style: none inside none;
101 105 padding: 0;
102 106 margin: 0;
103 107 top: -0.7em;
104 108 }
105 109
106 110 ul#graphnodes li, ul#nodebgs li {
107 111 height: 39px;
108 112 }
109 113
110 114 ul#graphnodes {
111 115 position: absolute;
112 116 z-index: 10;
113 117 top: -0.8em;
114 118 list-style: none inside none;
115 119 padding: 0;
116 120 }
117 121
118 122 ul#graphnodes li .info {
119 123 display: block;
120 124 font-size: 100%;
121 125 position: relative;
122 126 top: -3px;
123 127 font-style: italic;
124 128 }
@@ -1,1081 +1,1089
1 1 An attempt at more fully testing the hgweb web interface.
2 2 The following things are tested elsewhere and are therefore omitted:
3 3 - archive, tested in test-archive
4 4 - unbundle, tested in test-push-http
5 5 - changegroupsubset, tested in test-pull
6 6
7 7 Set up the repo
8 8
9 9 $ hg init test
10 10 $ cd test
11 11 $ mkdir da
12 12 $ echo foo > da/foo
13 13 $ echo foo > foo
14 14 $ hg ci -Ambase
15 15 adding da/foo
16 16 adding foo
17 17 $ hg tag 1.0
18 18 $ hg bookmark something
19 19 $ echo another > foo
20 20 $ hg branch stable
21 21 marked working directory as branch stable
22 22 $ hg ci -Ambranch
23 23 $ hg serve --config server.uncompressed=False -n test -p $HGPORT -d --pid-file=hg.pid -E errors.log
24 24 $ cat hg.pid >> $DAEMON_PIDS
25 25
26 26 Logs and changes
27 27
28 28 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/log/?style=atom'
29 29 200 Script output follows
30 30
31 31 <?xml version="1.0" encoding="ascii"?>
32 32 <feed xmlns="http://www.w3.org/2005/Atom">
33 33 <!-- Changelog -->
34 34 <id>http://*:$HGPORT/</id> (glob)
35 35 <link rel="self" href="http://*:$HGPORT/atom-log"/> (glob)
36 36 <link rel="alternate" href="http://*:$HGPORT/"/> (glob)
37 37 <title>test Changelog</title>
38 38 <updated>1970-01-01T00:00:00+00:00</updated>
39 39
40 40 <entry>
41 41 <title>branch</title>
42 42 <id>http://*:$HGPORT/#changeset-1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe</id> (glob)
43 43 <link href="http://*:$HGPORT/rev/1d22e65f027e"/> (glob)
44 44 <author>
45 45 <name>test</name>
46 46 <email>&#116;&#101;&#115;&#116;</email>
47 47 </author>
48 48 <updated>1970-01-01T00:00:00+00:00</updated>
49 49 <published>1970-01-01T00:00:00+00:00</published>
50 50 <content type="xhtml">
51 51 <div xmlns="http://www.w3.org/1999/xhtml">
52 52 <pre xml:space="preserve">branch</pre>
53 53 </div>
54 54 </content>
55 55 </entry>
56 56 <entry>
57 57 <title>Added tag 1.0 for changeset 2ef0ac749a14</title>
58 58 <id>http://*:$HGPORT/#changeset-a4f92ed23982be056b9852de5dfe873eaac7f0de</id> (glob)
59 59 <link href="http://*:$HGPORT/rev/a4f92ed23982"/> (glob)
60 60 <author>
61 61 <name>test</name>
62 62 <email>&#116;&#101;&#115;&#116;</email>
63 63 </author>
64 64 <updated>1970-01-01T00:00:00+00:00</updated>
65 65 <published>1970-01-01T00:00:00+00:00</published>
66 66 <content type="xhtml">
67 67 <div xmlns="http://www.w3.org/1999/xhtml">
68 68 <pre xml:space="preserve">Added tag 1.0 for changeset 2ef0ac749a14</pre>
69 69 </div>
70 70 </content>
71 71 </entry>
72 72 <entry>
73 73 <title>base</title>
74 74 <id>http://*:$HGPORT/#changeset-2ef0ac749a14e4f57a5a822464a0902c6f7f448f</id> (glob)
75 75 <link href="http://*:$HGPORT/rev/2ef0ac749a14"/> (glob)
76 76 <author>
77 77 <name>test</name>
78 78 <email>&#116;&#101;&#115;&#116;</email>
79 79 </author>
80 80 <updated>1970-01-01T00:00:00+00:00</updated>
81 81 <published>1970-01-01T00:00:00+00:00</published>
82 82 <content type="xhtml">
83 83 <div xmlns="http://www.w3.org/1999/xhtml">
84 84 <pre xml:space="preserve">base</pre>
85 85 </div>
86 86 </content>
87 87 </entry>
88 88
89 89 </feed>
90 90 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/log/1/?style=atom'
91 91 200 Script output follows
92 92
93 93 <?xml version="1.0" encoding="ascii"?>
94 94 <feed xmlns="http://www.w3.org/2005/Atom">
95 95 <!-- Changelog -->
96 96 <id>http://*:$HGPORT/</id> (glob)
97 97 <link rel="self" href="http://*:$HGPORT/atom-log"/> (glob)
98 98 <link rel="alternate" href="http://*:$HGPORT/"/> (glob)
99 99 <title>test Changelog</title>
100 100 <updated>1970-01-01T00:00:00+00:00</updated>
101 101
102 102 <entry>
103 103 <title>branch</title>
104 104 <id>http://*:$HGPORT/#changeset-1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe</id> (glob)
105 105 <link href="http://*:$HGPORT/rev/1d22e65f027e"/> (glob)
106 106 <author>
107 107 <name>test</name>
108 108 <email>&#116;&#101;&#115;&#116;</email>
109 109 </author>
110 110 <updated>1970-01-01T00:00:00+00:00</updated>
111 111 <published>1970-01-01T00:00:00+00:00</published>
112 112 <content type="xhtml">
113 113 <div xmlns="http://www.w3.org/1999/xhtml">
114 114 <pre xml:space="preserve">branch</pre>
115 115 </div>
116 116 </content>
117 117 </entry>
118 118 <entry>
119 119 <title>Added tag 1.0 for changeset 2ef0ac749a14</title>
120 120 <id>http://*:$HGPORT/#changeset-a4f92ed23982be056b9852de5dfe873eaac7f0de</id> (glob)
121 121 <link href="http://*:$HGPORT/rev/a4f92ed23982"/> (glob)
122 122 <author>
123 123 <name>test</name>
124 124 <email>&#116;&#101;&#115;&#116;</email>
125 125 </author>
126 126 <updated>1970-01-01T00:00:00+00:00</updated>
127 127 <published>1970-01-01T00:00:00+00:00</published>
128 128 <content type="xhtml">
129 129 <div xmlns="http://www.w3.org/1999/xhtml">
130 130 <pre xml:space="preserve">Added tag 1.0 for changeset 2ef0ac749a14</pre>
131 131 </div>
132 132 </content>
133 133 </entry>
134 134 <entry>
135 135 <title>base</title>
136 136 <id>http://*:$HGPORT/#changeset-2ef0ac749a14e4f57a5a822464a0902c6f7f448f</id> (glob)
137 137 <link href="http://*:$HGPORT/rev/2ef0ac749a14"/> (glob)
138 138 <author>
139 139 <name>test</name>
140 140 <email>&#116;&#101;&#115;&#116;</email>
141 141 </author>
142 142 <updated>1970-01-01T00:00:00+00:00</updated>
143 143 <published>1970-01-01T00:00:00+00:00</published>
144 144 <content type="xhtml">
145 145 <div xmlns="http://www.w3.org/1999/xhtml">
146 146 <pre xml:space="preserve">base</pre>
147 147 </div>
148 148 </content>
149 149 </entry>
150 150
151 151 </feed>
152 152 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/log/1/foo/?style=atom'
153 153 200 Script output follows
154 154
155 155 <?xml version="1.0" encoding="ascii"?>
156 156 <feed xmlns="http://www.w3.org/2005/Atom">
157 157 <id>http://*:$HGPORT/atom-log/tip/foo</id> (glob)
158 158 <link rel="self" href="http://*:$HGPORT/atom-log/tip/foo"/> (glob)
159 159 <title>test: foo history</title>
160 160 <updated>1970-01-01T00:00:00+00:00</updated>
161 161
162 162 <entry>
163 163 <title>base</title>
164 164 <id>http://*:$HGPORT/#changeset-2ef0ac749a14e4f57a5a822464a0902c6f7f448f</id> (glob)
165 165 <link href="http://*:$HGPORT/rev/2ef0ac749a14"/> (glob)
166 166 <author>
167 167 <name>test</name>
168 168 <email>&#116;&#101;&#115;&#116;</email>
169 169 </author>
170 170 <updated>1970-01-01T00:00:00+00:00</updated>
171 171 <published>1970-01-01T00:00:00+00:00</published>
172 172 <content type="xhtml">
173 173 <div xmlns="http://www.w3.org/1999/xhtml">
174 174 <pre xml:space="preserve">base</pre>
175 175 </div>
176 176 </content>
177 177 </entry>
178 178
179 179 </feed>
180 180 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/shortlog/'
181 181 200 Script output follows
182 182
183 183 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
184 184 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
185 185 <head>
186 186 <link rel="icon" href="/static/hgicon.png" type="image/png" />
187 187 <meta name="robots" content="index, nofollow" />
188 188 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
189 189
190 190 <title>test: log</title>
191 191 <link rel="alternate" type="application/atom+xml"
192 192 href="/atom-log" title="Atom feed for test" />
193 193 <link rel="alternate" type="application/rss+xml"
194 194 href="/rss-log" title="RSS feed for test" />
195 195 </head>
196 196 <body>
197 197
198 198 <div class="container">
199 199 <div class="menu">
200 200 <div class="logo">
201 201 <a href="http://mercurial.selenic.com/">
202 202 <img src="/static/hglogo.png" alt="mercurial" /></a>
203 203 </div>
204 204 <ul>
205 205 <li class="active">log</li>
206 206 <li><a href="/graph/1d22e65f027e">graph</a></li>
207 207 <li><a href="/tags">tags</a></li>
208 208 <li><a href="/bookmarks">bookmarks</a></li>
209 209 <li><a href="/branches">branches</a></li>
210 210 </ul>
211 211 <ul>
212 212 <li><a href="/rev/1d22e65f027e">changeset</a></li>
213 213 <li><a href="/file/1d22e65f027e">browse</a></li>
214 214 </ul>
215 215 <ul>
216 216
217 217 </ul>
218 218 <ul>
219 219 <li><a href="/help">help</a></li>
220 220 </ul>
221 221 </div>
222 222
223 223 <div class="main">
224 224 <h2><a href="/">test</a></h2>
225 225 <h3>log</h3>
226 226
227 227 <form class="search" action="/log">
228 228
229 229 <p><input name="rev" id="search1" type="text" size="30" /></p>
230 230 <div id="hint">find changesets by author, revision,
231 231 files, or words in the commit message</div>
232 232 </form>
233 233
234 234 <div class="navigate">
235 235 <a href="/shortlog/2?revcount=30">less</a>
236 236 <a href="/shortlog/2?revcount=120">more</a>
237 237 | rev 2: <a href="/shortlog/2ef0ac749a14">(0)</a> <a href="/shortlog/tip">tip</a>
238 238 </div>
239 239
240 240 <table class="bigtable">
241 241 <tr>
242 242 <th class="age">age</th>
243 243 <th class="author">author</th>
244 244 <th class="description">description</th>
245 245 </tr>
246 246 <tr class="parity0">
247 247 <td class="age">1970-01-01</td>
248 248 <td class="author">test</td>
249 249 <td class="description"><a href="/rev/1d22e65f027e">branch</a><span class="branchhead">stable</span> <span class="tag">tip</span> <span class="tag">something</span> </td>
250 250 </tr>
251 251 <tr class="parity1">
252 252 <td class="age">1970-01-01</td>
253 253 <td class="author">test</td>
254 254 <td class="description"><a href="/rev/a4f92ed23982">Added tag 1.0 for changeset 2ef0ac749a14</a><span class="branchhead">default</span> </td>
255 255 </tr>
256 256 <tr class="parity0">
257 257 <td class="age">1970-01-01</td>
258 258 <td class="author">test</td>
259 259 <td class="description"><a href="/rev/2ef0ac749a14">base</a><span class="tag">1.0</span> </td>
260 260 </tr>
261 261
262 262 </table>
263 263
264 264 <div class="navigate">
265 265 <a href="/shortlog/2?revcount=30">less</a>
266 266 <a href="/shortlog/2?revcount=120">more</a>
267 267 | rev 2: <a href="/shortlog/2ef0ac749a14">(0)</a> <a href="/shortlog/tip">tip</a>
268 268 </div>
269 269
270 270 </div>
271 271 </div>
272 272
273 273
274 274
275 275 </body>
276 276 </html>
277 277
278 278 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/rev/0/'
279 279 200 Script output follows
280 280
281 281 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
282 282 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
283 283 <head>
284 284 <link rel="icon" href="/static/hgicon.png" type="image/png" />
285 285 <meta name="robots" content="index, nofollow" />
286 286 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
287 287
288 288 <title>test: 2ef0ac749a14</title>
289 289 </head>
290 290 <body>
291 291 <div class="container">
292 292 <div class="menu">
293 293 <div class="logo">
294 294 <a href="http://mercurial.selenic.com/">
295 295 <img src="/static/hglogo.png" alt="mercurial" /></a>
296 296 </div>
297 297 <ul>
298 298 <li><a href="/shortlog/2ef0ac749a14">log</a></li>
299 299 <li><a href="/graph/2ef0ac749a14">graph</a></li>
300 300 <li><a href="/tags">tags</a></li>
301 301 <li><a href="/bookmarks">bookmarks</a></li>
302 302 <li><a href="/branches">branches</a></li>
303 303 </ul>
304 304 <ul>
305 305 <li class="active">changeset</li>
306 306 <li><a href="/raw-rev/2ef0ac749a14">raw</a></li>
307 307 <li><a href="/file/2ef0ac749a14">browse</a></li>
308 308 </ul>
309 309 <ul>
310 310
311 311 </ul>
312 312 <ul>
313 313 <li><a href="/help">help</a></li>
314 314 </ul>
315 315 </div>
316 316
317 317 <div class="main">
318 318
319 319 <h2><a href="/">test</a></h2>
320 320 <h3>changeset 0:2ef0ac749a14 <span class="tag">1.0</span> </h3>
321 321
322 322 <form class="search" action="/log">
323 323
324 324 <p><input name="rev" id="search1" type="text" size="30" /></p>
325 325 <div id="hint">find changesets by author, revision,
326 326 files, or words in the commit message</div>
327 327 </form>
328 328
329 329 <div class="description">base</div>
330 330
331 331 <table id="changesetEntry">
332 332 <tr>
333 333 <th class="author">author</th>
334 334 <td class="author">&#116;&#101;&#115;&#116;</td>
335 335 </tr>
336 336 <tr>
337 337 <th class="date">date</th>
338 338 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td></tr>
339 339 <tr>
340 340 <th class="author">parents</th>
341 341 <td class="author"></td>
342 342 </tr>
343 343 <tr>
344 344 <th class="author">children</th>
345 345 <td class="author"> <a href="/rev/a4f92ed23982">a4f92ed23982</a></td>
346 346 </tr>
347 347 <tr>
348 348 <th class="files">files</th>
349 349 <td class="files"><a href="/file/2ef0ac749a14/da/foo">da/foo</a> <a href="/file/2ef0ac749a14/foo">foo</a> </td>
350 350 </tr>
351 351 </table>
352 352
353 353 <div class="overflow">
354 354 <div class="sourcefirst"> line diff</div>
355 355
356 356 <div class="source bottomline parity0"><pre><a href="#l1.1" id="l1.1"> 1.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
357 357 </span><a href="#l1.2" id="l1.2"> 1.2</a> <span class="plusline">+++ b/da/foo Thu Jan 01 00:00:00 1970 +0000
358 358 </span><a href="#l1.3" id="l1.3"> 1.3</a> <span class="atline">@@ -0,0 +1,1 @@
359 359 </span><a href="#l1.4" id="l1.4"> 1.4</a> <span class="plusline">+foo
360 360 </span></pre></div><div class="source bottomline parity1"><pre><a href="#l2.1" id="l2.1"> 2.1</a> <span class="minusline">--- /dev/null Thu Jan 01 00:00:00 1970 +0000
361 361 </span><a href="#l2.2" id="l2.2"> 2.2</a> <span class="plusline">+++ b/foo Thu Jan 01 00:00:00 1970 +0000
362 362 </span><a href="#l2.3" id="l2.3"> 2.3</a> <span class="atline">@@ -0,0 +1,1 @@
363 363 </span><a href="#l2.4" id="l2.4"> 2.4</a> <span class="plusline">+foo
364 364 </span></pre></div>
365 365 </div>
366 366
367 367 </div>
368 368 </div>
369 369
370 370
371 371 </body>
372 372 </html>
373 373
374 374 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/rev/1/?style=raw'
375 375 200 Script output follows
376 376
377 377
378 378 # HG changeset patch
379 379 # User test
380 380 # Date 0 0
381 381 # Node ID a4f92ed23982be056b9852de5dfe873eaac7f0de
382 382 # Parent 2ef0ac749a14e4f57a5a822464a0902c6f7f448f
383 383 Added tag 1.0 for changeset 2ef0ac749a14
384 384
385 385 diff -r 2ef0ac749a14 -r a4f92ed23982 .hgtags
386 386 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
387 387 +++ b/.hgtags Thu Jan 01 00:00:00 1970 +0000
388 388 @@ -0,0 +1,1 @@
389 389 +2ef0ac749a14e4f57a5a822464a0902c6f7f448f 1.0
390 390
391 391 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/log?rev=base'
392 392 200 Script output follows
393 393
394 394 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
395 395 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
396 396 <head>
397 397 <link rel="icon" href="/static/hgicon.png" type="image/png" />
398 398 <meta name="robots" content="index, nofollow" />
399 399 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
400 400
401 401 <title>test: searching for base</title>
402 402 </head>
403 403 <body>
404 404
405 405 <div class="container">
406 406 <div class="menu">
407 407 <div class="logo">
408 408 <a href="http://mercurial.selenic.com/">
409 409 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial"></a>
410 410 </div>
411 411 <ul>
412 412 <li><a href="/shortlog">log</a></li>
413 413 <li><a href="/graph">graph</a></li>
414 414 <li><a href="/tags">tags</a></li>
415 415 <li><a href="/bookmarks">bookmarks</a></li>
416 416 <li><a href="/branches">branches</a></li>
417 417 <li><a href="/help">help</a></li>
418 418 </ul>
419 419 </div>
420 420
421 421 <div class="main">
422 422 <h2><a href="/">test</a></h2>
423 423 <h3>searching for 'base'</h3>
424 424
425 425 <form class="search" action="/log">
426 426
427 427 <p><input name="rev" id="search1" type="text" size="30"></p>
428 428 <div id="hint">find changesets by author, revision,
429 429 files, or words in the commit message</div>
430 430 </form>
431 431
432 432 <div class="navigate">
433 433 <a href="/search/?rev=base&revcount=5">less</a>
434 434 <a href="/search/?rev=base&revcount=20">more</a>
435 435 </div>
436 436
437 437 <table class="bigtable">
438 438 <tr>
439 439 <th class="age">age</th>
440 440 <th class="author">author</th>
441 441 <th class="description">description</th>
442 442 </tr>
443 443 <tr class="parity0">
444 444 <td class="age">1970-01-01</td>
445 445 <td class="author">test</td>
446 446 <td class="description"><a href="/rev/2ef0ac749a14">base</a><span class="tag">1.0</span> </td>
447 447 </tr>
448 448
449 449 </table>
450 450
451 451 <div class="navigate">
452 452 <a href="/search/?rev=base&revcount=5">less</a>
453 453 <a href="/search/?rev=base&revcount=20">more</a>
454 454 </div>
455 455
456 456 </div>
457 457 </div>
458 458
459 459
460 460
461 461 </body>
462 462 </html>
463 463
464 464
465 465 File-related
466 466
467 467 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/foo/?style=raw'
468 468 200 Script output follows
469 469
470 470 foo
471 471 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/annotate/1/foo/?style=raw'
472 472 200 Script output follows
473 473
474 474
475 475 test@0: foo
476 476
477 477
478 478
479 479
480 480 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/?style=raw'
481 481 200 Script output follows
482 482
483 483
484 484 drwxr-xr-x da
485 485 -rw-r--r-- 45 .hgtags
486 486 -rw-r--r-- 4 foo
487 487
488 488
489 489 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/file/1/foo'
490 490 200 Script output follows
491 491
492 492 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
493 493 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
494 494 <head>
495 495 <link rel="icon" href="/static/hgicon.png" type="image/png" />
496 496 <meta name="robots" content="index, nofollow" />
497 497 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
498 498
499 499 <title>test: a4f92ed23982 foo</title>
500 500 </head>
501 501 <body>
502 502
503 503 <div class="container">
504 504 <div class="menu">
505 505 <div class="logo">
506 506 <a href="http://mercurial.selenic.com/">
507 507 <img src="/static/hglogo.png" alt="mercurial" /></a>
508 508 </div>
509 509 <ul>
510 510 <li><a href="/shortlog/a4f92ed23982">log</a></li>
511 511 <li><a href="/graph/a4f92ed23982">graph</a></li>
512 512 <li><a href="/tags">tags</a></li>
513 513 <li><a href="/branches">branches</a></li>
514 514 </ul>
515 515 <ul>
516 516 <li><a href="/rev/a4f92ed23982">changeset</a></li>
517 517 <li><a href="/file/a4f92ed23982/">browse</a></li>
518 518 </ul>
519 519 <ul>
520 520 <li class="active">file</li>
521 521 <li><a href="/file/tip/foo">latest</a></li>
522 522 <li><a href="/diff/a4f92ed23982/foo">diff</a></li>
523 523 <li><a href="/annotate/a4f92ed23982/foo">annotate</a></li>
524 524 <li><a href="/log/a4f92ed23982/foo">file log</a></li>
525 525 <li><a href="/raw-file/a4f92ed23982/foo">raw</a></li>
526 526 </ul>
527 527 <ul>
528 528 <li><a href="/help">help</a></li>
529 529 </ul>
530 530 </div>
531 531
532 532 <div class="main">
533 533 <h2><a href="/">test</a></h2>
534 534 <h3>view foo @ 1:a4f92ed23982</h3>
535 535
536 536 <form class="search" action="/log">
537 537
538 538 <p><input name="rev" id="search1" type="text" size="30" /></p>
539 539 <div id="hint">find changesets by author, revision,
540 540 files, or words in the commit message</div>
541 541 </form>
542 542
543 543 <div class="description">Added tag 1.0 for changeset 2ef0ac749a14</div>
544 544
545 545 <table id="changesetEntry">
546 546 <tr>
547 547 <th class="author">author</th>
548 548 <td class="author">&#116;&#101;&#115;&#116;</td>
549 549 </tr>
550 550 <tr>
551 551 <th class="date">date</th>
552 552 <td class="date">Thu Jan 01 00:00:00 1970 +0000 (1970-01-01)</td>
553 553 </tr>
554 554 <tr>
555 555 <th class="author">parents</th>
556 556 <td class="author"></td>
557 557 </tr>
558 558 <tr>
559 559 <th class="author">children</th>
560 560 <td class="author"><a href="/file/1d22e65f027e/foo">1d22e65f027e</a> </td>
561 561 </tr>
562 562
563 563 </table>
564 564
565 565 <div class="overflow">
566 566 <div class="sourcefirst"> line source</div>
567 567
568 568 <div class="parity0 source"><a href="#l1" id="l1"> 1</a> foo
569 569 </div>
570 570 <div class="sourcelast"></div>
571 571 </div>
572 572 </div>
573 573 </div>
574 574
575 575
576 576
577 577 </body>
578 578 </html>
579 579
580 580 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/filediff/1/foo/?style=raw'
581 581 200 Script output follows
582 582
583 583
584 584 diff -r 000000000000 -r a4f92ed23982 foo
585 585 --- /dev/null Thu Jan 01 00:00:00 1970 +0000
586 586 +++ b/foo Thu Jan 01 00:00:00 1970 +0000
587 587 @@ -0,0 +1,1 @@
588 588 +foo
589 589
590 590
591 591
592 592
593 593
594 594 Overviews
595 595
596 596 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/raw-tags'
597 597 200 Script output follows
598 598
599 599 tip 1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe
600 600 1.0 2ef0ac749a14e4f57a5a822464a0902c6f7f448f
601 601 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/raw-branches'
602 602 200 Script output follows
603 603
604 604 stable 1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe open
605 605 default a4f92ed23982be056b9852de5dfe873eaac7f0de inactive
606 606 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/summary/?style=gitweb'
607 607 200 Script output follows
608 608
609 609 <?xml version="1.0" encoding="ascii"?>
610 610 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
611 611 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
612 612 <head>
613 613 <link rel="icon" href="/static/hgicon.png" type="image/png" />
614 614 <meta name="robots" content="index, nofollow"/>
615 615 <link rel="stylesheet" href="/static/style-gitweb.css" type="text/css" />
616 616
617 617
618 618 <title>test: Summary</title>
619 619 <link rel="alternate" type="application/atom+xml"
620 620 href="/atom-log" title="Atom feed for test"/>
621 621 <link rel="alternate" type="application/rss+xml"
622 622 href="/rss-log" title="RSS feed for test"/>
623 623 </head>
624 624 <body>
625 625
626 626 <div class="page_header">
627 627 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test</a> / summary
628 628
629 629 <form action="/log">
630 630 <input type="hidden" name="style" value="gitweb" />
631 631 <div class="search">
632 632 <input type="text" name="rev" />
633 633 </div>
634 634 </form>
635 635 </div>
636 636
637 637 <div class="page_nav">
638 638 summary |
639 639 <a href="/shortlog?style=gitweb">shortlog</a> |
640 640 <a href="/log?style=gitweb">changelog</a> |
641 641 <a href="/graph?style=gitweb">graph</a> |
642 642 <a href="/tags?style=gitweb">tags</a> |
643 <a href="/bookmarks?style=gitweb">bookmarks</a> |
643 644 <a href="/branches?style=gitweb">branches</a> |
644 645 <a href="/file/1d22e65f027e?style=gitweb">files</a> |
645 646 <a href="/help?style=gitweb">help</a>
646 647 <br/>
647 648 </div>
648 649
649 650 <div class="title">&nbsp;</div>
650 651 <table cellspacing="0">
651 652 <tr><td>description</td><td>unknown</td></tr>
652 653 <tr><td>owner</td><td>&#70;&#111;&#111;&#32;&#66;&#97;&#114;&#32;&#60;&#102;&#111;&#111;&#46;&#98;&#97;&#114;&#64;&#101;&#120;&#97;&#109;&#112;&#108;&#101;&#46;&#99;&#111;&#109;&#62;</td></tr>
653 654 <tr><td>last change</td><td>Thu, 01 Jan 1970 00:00:00 +0000</td></tr>
654 655 </table>
655 656
656 657 <div><a class="title" href="/shortlog?style=gitweb">changes</a></div>
657 658 <table cellspacing="0">
658 659
659 660 <tr class="parity0">
660 661 <td class="age"><i>1970-01-01</i></td>
661 662 <td><i>test</i></td>
662 663 <td>
663 664 <a class="list" href="/rev/1d22e65f027e?style=gitweb">
664 665 <b>branch</b>
665 <span class="logtags"><span class="branchtag" title="stable">stable</span> <span class="tagtag" title="tip">tip</span> </span>
666 <span class="logtags"><span class="branchtag" title="stable">stable</span> <span class="tagtag" title="tip">tip</span> <span class="bookmarktag" title="something">something</span> </span>
666 667 </a>
667 668 </td>
668 669 <td class="link" nowrap>
669 670 <a href="/rev/1d22e65f027e?style=gitweb">changeset</a> |
670 671 <a href="/file/1d22e65f027e?style=gitweb">files</a>
671 672 </td>
672 673 </tr>
673 674 <tr class="parity1">
674 675 <td class="age"><i>1970-01-01</i></td>
675 676 <td><i>test</i></td>
676 677 <td>
677 678 <a class="list" href="/rev/a4f92ed23982?style=gitweb">
678 679 <b>Added tag 1.0 for changeset 2ef0ac749a14</b>
679 680 <span class="logtags"><span class="branchtag" title="default">default</span> </span>
680 681 </a>
681 682 </td>
682 683 <td class="link" nowrap>
683 684 <a href="/rev/a4f92ed23982?style=gitweb">changeset</a> |
684 685 <a href="/file/a4f92ed23982?style=gitweb">files</a>
685 686 </td>
686 687 </tr>
687 688 <tr class="parity0">
688 689 <td class="age"><i>1970-01-01</i></td>
689 690 <td><i>test</i></td>
690 691 <td>
691 692 <a class="list" href="/rev/2ef0ac749a14?style=gitweb">
692 693 <b>base</b>
693 694 <span class="logtags"><span class="tagtag" title="1.0">1.0</span> </span>
694 695 </a>
695 696 </td>
696 697 <td class="link" nowrap>
697 698 <a href="/rev/2ef0ac749a14?style=gitweb">changeset</a> |
698 699 <a href="/file/2ef0ac749a14?style=gitweb">files</a>
699 700 </td>
700 701 </tr>
701 702 <tr class="light"><td colspan="4"><a class="list" href="/shortlog?style=gitweb">...</a></td></tr>
702 703 </table>
703 704
704 705 <div><a class="title" href="/tags?style=gitweb">tags</a></div>
705 706 <table cellspacing="0">
706 707
707 708 <tr class="parity0">
708 709 <td class="age"><i>1970-01-01</i></td>
709 710 <td><a class="list" href="/rev/2ef0ac749a14?style=gitweb"><b>1.0</b></a></td>
710 711 <td class="link">
711 712 <a href="/rev/2ef0ac749a14?style=gitweb">changeset</a> |
712 713 <a href="/log/2ef0ac749a14?style=gitweb">changelog</a> |
713 714 <a href="/file/2ef0ac749a14?style=gitweb">files</a>
714 715 </td>
715 716 </tr>
716 717 <tr class="light"><td colspan="3"><a class="list" href="/tags?style=gitweb">...</a></td></tr>
717 718 </table>
718 719
719 720 <div><a class="title" href="#">branches</a></div>
720 721 <table cellspacing="0">
721 722
722 723 <tr class="parity0">
723 724 <td class="age"><i>1970-01-01</i></td>
724 725 <td><a class="list" href="/shortlog/1d22e65f027e?style=gitweb"><b>1d22e65f027e</b></a></td>
725 726 <td class="">stable</td>
726 727 <td class="link">
727 728 <a href="/changeset/1d22e65f027e?style=gitweb">changeset</a> |
728 729 <a href="/log/1d22e65f027e?style=gitweb">changelog</a> |
729 730 <a href="/file/1d22e65f027e?style=gitweb">files</a>
730 731 </td>
731 732 </tr>
732 733 <tr class="parity1">
733 734 <td class="age"><i>1970-01-01</i></td>
734 735 <td><a class="list" href="/shortlog/a4f92ed23982?style=gitweb"><b>a4f92ed23982</b></a></td>
735 736 <td class="">default</td>
736 737 <td class="link">
737 738 <a href="/changeset/a4f92ed23982?style=gitweb">changeset</a> |
738 739 <a href="/log/a4f92ed23982?style=gitweb">changelog</a> |
739 740 <a href="/file/a4f92ed23982?style=gitweb">files</a>
740 741 </td>
741 742 </tr>
742 743 <tr class="light">
743 744 <td colspan="4"><a class="list" href="#">...</a></td>
744 745 </tr>
745 746 </table>
746 747 <div class="page_footer">
747 748 <div class="page_footer_text">test</div>
748 749 <div class="rss_logo">
749 750 <a href="/rss-log">RSS</a>
750 751 <a href="/atom-log">Atom</a>
751 752 </div>
752 753 <br />
753 754
754 755 </div>
755 756 </body>
756 757 </html>
757 758
758 759 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/graph/?style=gitweb'
759 760 200 Script output follows
760 761
761 762 <?xml version="1.0" encoding="ascii"?>
762 763 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
763 764 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">
764 765 <head>
765 766 <link rel="icon" href="/static/hgicon.png" type="image/png" />
766 767 <meta name="robots" content="index, nofollow"/>
767 768 <link rel="stylesheet" href="/static/style-gitweb.css" type="text/css" />
768 769
769 770
770 771 <title>test: Graph</title>
771 772 <link rel="alternate" type="application/atom+xml"
772 773 href="/atom-log" title="Atom feed for test"/>
773 774 <link rel="alternate" type="application/rss+xml"
774 775 href="/rss-log" title="RSS feed for test"/>
775 776 <!--[if IE]><script type="text/javascript" src="/static/excanvas.js"></script><![endif]-->
776 777 </head>
777 778 <body>
778 779
779 780 <div class="page_header">
780 781 <a href="http://mercurial.selenic.com/" title="Mercurial" style="float: right;">Mercurial</a><a href="/summary?style=gitweb">test</a> / graph
781 782 </div>
782 783
783 784 <form action="/log">
784 785 <input type="hidden" name="style" value="gitweb" />
785 786 <div class="search">
786 787 <input type="text" name="rev" />
787 788 </div>
788 789 </form>
789 790 <div class="page_nav">
790 791 <a href="/summary?style=gitweb">summary</a> |
791 792 <a href="/shortlog?style=gitweb">shortlog</a> |
792 793 <a href="/log/2?style=gitweb">changelog</a> |
793 794 graph |
794 795 <a href="/tags?style=gitweb">tags</a> |
796 <a href="/bookmarks?style=gitweb">bookmarks</a> |
795 797 <a href="/branches?style=gitweb">branches</a> |
796 798 <a href="/file/1d22e65f027e?style=gitweb">files</a> |
797 799 <a href="/help?style=gitweb">help</a>
798 800 <br/>
799 801 <a href="/graph/2?style=gitweb&revcount=30">less</a>
800 802 <a href="/graph/2?style=gitweb&revcount=120">more</a>
801 803 | <a href="/graph/2ef0ac749a14?style=gitweb">(0)</a> <a href="/graph/2ef0ac749a14?style=gitweb">-2</a> <a href="/graph/tip?style=gitweb">tip</a> <br/>
802 804 </div>
803 805
804 806 <div class="title">&nbsp;</div>
805 807
806 808 <noscript>The revision graph only works with JavaScript-enabled browsers.</noscript>
807 809
808 810 <div id="wrapper">
809 811 <ul id="nodebgs"></ul>
810 812 <canvas id="graph" width="480" height="129"></canvas>
811 813 <ul id="graphnodes"></ul>
812 814 </div>
813 815
814 816 <script type="text/javascript" src="/static/graph.js"></script>
815 817 <script>
816 818 <!-- hide script content
817 819
818 820 var data = [["1d22e65f027e", [0, 1], [[0, 0, 1]], "branch", "test", "1970-01-01", ["stable", true], ["tip"], ["something"]], ["a4f92ed23982", [0, 1], [[0, 0, 1]], "Added tag 1.0 for changeset 2ef0ac749a14", "test", "1970-01-01", ["default", true], [], []], ["2ef0ac749a14", [0, 1], [], "base", "test", "1970-01-01", ["default", false], ["1.0"], []]];
819 821 var graph = new Graph();
820 822 graph.scale(39);
821 823
822 824 graph.edge = function(x0, y0, x1, y1, color) {
823 825
824 826 this.setColor(color, 0.0, 0.65);
825 827 this.ctx.beginPath();
826 828 this.ctx.moveTo(x0, y0);
827 829 this.ctx.lineTo(x1, y1);
828 830 this.ctx.stroke();
829 831
830 832 }
831 833
832 834 var revlink = '<li style="_STYLE"><span class="desc">';
833 835 revlink += '<a class="list" href="/rev/_NODEID?style=gitweb" title="_NODEID"><b>_DESC</b></a>';
834 836 revlink += '</span> _TAGS';
835 837 revlink += '<span class="info">_DATE, by _USER</span></li>';
836 838
837 839 graph.vertex = function(x, y, color, parity, cur) {
838 840
839 841 this.ctx.beginPath();
840 842 color = this.setColor(color, 0.25, 0.75);
841 843 this.ctx.arc(x, y, radius, 0, Math.PI * 2, true);
842 844 this.ctx.fill();
843 845
844 846 var bg = '<li class="bg parity' + parity + '"></li>';
845 847 var left = (this.columns + 1) * this.bg_height;
846 848 var nstyle = 'padding-left: ' + left + 'px;';
847 849 var item = revlink.replace(/_STYLE/, nstyle);
848 850 item = item.replace(/_PARITY/, 'parity' + parity);
849 851 item = item.replace(/_NODEID/, cur[0]);
850 852 item = item.replace(/_NODEID/, cur[0]);
851 853 item = item.replace(/_DESC/, cur[3]);
852 854 item = item.replace(/_USER/, cur[4]);
853 855 item = item.replace(/_DATE/, cur[5]);
854 856
855 857 var tagspan = '';
856 if (cur[7].length || (cur[6][0] != 'default' || cur[6][1])) {
858 if (cur[7].length || cur[8].length || (cur[6][0] != 'default' || cur[6][1])) {
857 859 tagspan = '<span class="logtags">';
858 860 if (cur[6][1]) {
859 861 tagspan += '<span class="branchtag" title="' + cur[6][0] + '">';
860 862 tagspan += cur[6][0] + '</span> ';
861 863 } else if (!cur[6][1] && cur[6][0] != 'default') {
862 864 tagspan += '<span class="inbranchtag" title="' + cur[6][0] + '">';
863 865 tagspan += cur[6][0] + '</span> ';
864 866 }
865 867 if (cur[7].length) {
866 868 for (var t in cur[7]) {
867 869 var tag = cur[7][t];
868 870 tagspan += '<span class="tagtag">' + tag + '</span> ';
869 871 }
870 872 }
873 if (cur[8].length) {
874 for (var t in cur[8]) {
875 var bookmark = cur[8][t];
876 tagspan += '<span class="bookmarktag">' + bookmark + '</span> ';
877 }
878 }
871 879 tagspan += '</span>';
872 880 }
873 881
874 882 item = item.replace(/_TAGS/, tagspan);
875 883 return [bg, item];
876 884
877 885 }
878 886
879 887 graph.render(data);
880 888
881 889 // stop hiding script -->
882 890 </script>
883 891
884 892 <div class="page_nav">
885 893 <a href="/graph/2?style=gitweb&revcount=30">less</a>
886 894 <a href="/graph/2?style=gitweb&revcount=120">more</a>
887 895 | <a href="/graph/2ef0ac749a14?style=gitweb">(0)</a> <a href="/graph/2ef0ac749a14?style=gitweb">-2</a> <a href="/graph/tip?style=gitweb">tip</a>
888 896 </div>
889 897
890 898 <div class="page_footer">
891 899 <div class="page_footer_text">test</div>
892 900 <div class="rss_logo">
893 901 <a href="/rss-log">RSS</a>
894 902 <a href="/atom-log">Atom</a>
895 903 </div>
896 904 <br />
897 905
898 906 </div>
899 907 </body>
900 908 </html>
901 909
902 910
903 911 capabilities
904 912
905 913 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=capabilities'; echo
906 914 200 Script output follows
907 915
908 916 lookup changegroupsubset branchmap pushkey known getbundle unbundle=HG10GZ,HG10BZ,HG10UN
909 917
910 918 heads
911 919
912 920 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=heads'
913 921 200 Script output follows
914 922
915 923 1d22e65f027e5a0609357e7d8e7508cd2ba5d2fe
916 924
917 925 branches
918 926
919 927 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=branches&nodes=0000000000000000000000000000000000000000'
920 928 200 Script output follows
921 929
922 930 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000 0000000000000000000000000000000000000000
923 931
924 932 changegroup
925 933
926 934 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=changegroup&roots=0000000000000000000000000000000000000000'
927 935 200 Script output follows
928 936
929 937 x\x9c\xbdTMHUA\x14\xbe\xa8\xf9\xec\xda&\x10\x11*\xb8\x88\x81\x99\xbef\xe6\xce\xbdw\xc6\xf2a\x16E\x1b\x11[%\x98\xcc\xaf\x8f\x8c\xf7\xc0\xf7\x82 (esc)
930 938 4\x11KP2m\x95\xad*\xabE\x05AP\xd0\xc22Z\x14\xf9\x03\xb9j\xa3\x9b$\xa4MJ\xb4\x90\xc0\x9a\x9bO0\x10\xdf\x13\xa2\x81\x0f\x869g\xe6|\xe7\x9c\xef\x8ceY\xf7\xa2KO\xd2\xb7K\x16~\\n\xe9\xad\x90w\x86\xab\x93W\x8e\xdf\xb0r\\Y\xee6(\xa2)\xf6\x95\xc6\x01\xe4\x1az\x80R\xe8kN\x98\xe7R\xa4\xa9K@\xe0!A\xb4k\xa7U*m\x03\x07\xd8\x92\x1d\xd2\xc9\xa4\x1d\xc2\xe6,\xa5\xcc+\x1f\xef\xafDgi\xef\xab\x1d\x1d\xb7\x9a\xe7[W\xfbc\x8f\xde-\xcd\xe7\xcaz\xb3\xbb\x19\xd3\x81\x10>c>\x08\x00"X\x11\xc2\x84@\xd2\xe7B*L\x00\x01P\x04R\xc3@\xbaB0\xdb8#\x83:\x83\xa2h\xbc=\xcd\xdaS\xe1Y,L\xd3\xa0\xf2\xa8\x94J:\xe6\xd8\x81Q\xe0\xe8d\xa7#\xe2,\xd1\xaeR*\xed \xa5\x01\x13\x01\xa6\x0cb\xe3;\xbe\xaf\xfcK[^wK\xe1N\xaf\xbbk\xe8B\xd1\xf4\xc1\x07\xb3\xab[\x10\xfdkmvwcB\xa6\xa4\xd4G\xc4D\xc2\x141\xad\x91\x10\x00\x08J\x81\xcb}\xee \xee+W\xba\x8a\x80\x90|\xd4\xa0\xd6\xa0\xd4T\xde\xe1\x9d,!\xe2\xb5\xa94\xe3\xe7\xd5\x9f\x06\x18\xcba\x03aP\xb8f\xcd\x04\x1a_\\9\xf1\xed\xe4\x9e\xe5\xa6\xd1\xd2\x9f\x03\xa7o\xae\x90H\xf3\xfb\xef\xffH3\xadk (esc)
931 939 \xb0\x90\x92\x88\xb9\x14"\x068\xc2\x1e@\x00\xbb\x8a)\xd3'\x859 (esc)
932 940 \xa8\x80\x84S \xa5\xbd-g\x13`\xe4\xdc\xc3H^\xdf\xe2\xc0TM\xc7\xf4BO\xcf\xde\xae\xe5\xae#\x1frM(K\x97`F\x19\x16s\x05GD\xb9\x01\xc1\x00+\x8c|\x9fp\xc11\xf0\x14\x00\x9cJ\x82<\xe0\x12\x9f\xc1\x90\xd0\xf5\xc8\x19>Pr\xaa\xeaW\xf5\xc4\xae\xd1\xfc\x17\xcf'\x13u\xb1\x9e\xcdHnC\x0e\xcc`\xc8\xa0&\xac\x0e\xf1|\x8c\x10$\xc4\x8c\xa2p\x05`\xdc\x08 \x80\xc4\xd7Rr-\x94\x10\x102\xedi;\xf3f\xf1z\x16\x86\xdb\xd8d\xe5\xe7\x8b\xf5\x8d\rzp\xb2\xfe\xac\xf5\xf2\xd3\xfe\xfckws\xedt\x96b\xd5l\x1c\x0b\x85\xb5\x170\x8f\x11\x84\xb0\x8f\x19\xa0\x00 _\x07\x1ac\xa2\xc3\x89Z\xe7\x96\xf9 \xccNFg\xc7F\xaa\x8a+\x9a\x9cc_\x17\x1b\x17\x9e]z38<\x97+\xb5,",\xc8\xc8?\\\x91\xff\x17.~U\x96\x97\xf5%\xdeN<\x8e\xf5\x97%\xe7^\xcfL\xed~\xda\x96k\xdc->\x86\x02\x83"\x96H\xa6\xe3\xaas=-\xeb7\xe5\xda\x8f\xbc (no-eol) (esc)
933 941
934 942 stream_out
935 943
936 944 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=stream_out'
937 945 200 Script output follows
938 946
939 947 1
940 948
941 949 failing unbundle, requires POST request
942 950
943 951 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '?cmd=unbundle'
944 952 405 push requires POST request
945 953
946 954 0
947 955 push requires POST request
948 956 [1]
949 957
950 958 Static files
951 959
952 960 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/static/style.css'
953 961 200 Script output follows
954 962
955 963 a { text-decoration:none; }
956 964 .age { white-space:nowrap; }
957 965 .date { white-space:nowrap; }
958 966 .indexlinks { white-space:nowrap; }
959 967 .parity0 { background-color: #ddd; }
960 968 .parity1 { background-color: #eee; }
961 969 .lineno { width: 60px; color: #aaa; font-size: smaller;
962 970 text-align: right; }
963 971 .plusline { color: green; }
964 972 .minusline { color: red; }
965 973 .atline { color: purple; }
966 974 .annotate { font-size: smaller; text-align: right; padding-right: 1em; }
967 975 .buttons a {
968 976 background-color: #666;
969 977 padding: 2pt;
970 978 color: white;
971 979 font-family: sans;
972 980 font-weight: bold;
973 981 }
974 982 .navigate a {
975 983 background-color: #ccc;
976 984 padding: 2pt;
977 985 font-family: sans;
978 986 color: black;
979 987 }
980 988
981 989 .metatag {
982 990 background-color: #888;
983 991 color: white;
984 992 text-align: right;
985 993 }
986 994
987 995 /* Common */
988 996 pre { margin: 0; }
989 997
990 998 .logo {
991 999 float: right;
992 1000 clear: right;
993 1001 }
994 1002
995 1003 /* Changelog/Filelog entries */
996 1004 .logEntry { width: 100%; }
997 1005 .logEntry .age { width: 15%; }
998 1006 .logEntry th { font-weight: normal; text-align: right; vertical-align: top; }
999 1007 .logEntry th.age, .logEntry th.firstline { font-weight: bold; }
1000 1008 .logEntry th.firstline { text-align: left; width: inherit; }
1001 1009
1002 1010 /* Shortlog entries */
1003 1011 .slogEntry { width: 100%; }
1004 1012 .slogEntry .age { width: 8em; }
1005 1013 .slogEntry td { font-weight: normal; text-align: left; vertical-align: top; }
1006 1014 .slogEntry td.author { width: 15em; }
1007 1015
1008 1016 /* Tag entries */
1009 1017 #tagEntries { list-style: none; margin: 0; padding: 0; }
1010 1018 #tagEntries .tagEntry { list-style: none; margin: 0; padding: 0; }
1011 1019
1012 1020 /* Changeset entry */
1013 1021 #changesetEntry { }
1014 1022 #changesetEntry th { font-weight: normal; background-color: #888; color: #fff; text-align: right; }
1015 1023 #changesetEntry th.files, #changesetEntry th.description { vertical-align: top; }
1016 1024
1017 1025 /* File diff view */
1018 1026 #filediffEntry { }
1019 1027 #filediffEntry th { font-weight: normal; background-color: #888; color: #fff; text-align: right; }
1020 1028
1021 1029 /* Graph */
1022 1030 div#wrapper {
1023 1031 position: relative;
1024 1032 margin: 0;
1025 1033 padding: 0;
1026 1034 }
1027 1035
1028 1036 canvas {
1029 1037 position: absolute;
1030 1038 z-index: 5;
1031 1039 top: -0.6em;
1032 1040 margin: 0;
1033 1041 }
1034 1042
1035 1043 ul#nodebgs {
1036 1044 list-style: none inside none;
1037 1045 padding: 0;
1038 1046 margin: 0;
1039 1047 top: -0.7em;
1040 1048 }
1041 1049
1042 1050 ul#graphnodes li, ul#nodebgs li {
1043 1051 height: 39px;
1044 1052 }
1045 1053
1046 1054 ul#graphnodes {
1047 1055 position: absolute;
1048 1056 z-index: 10;
1049 1057 top: -0.85em;
1050 1058 list-style: none inside none;
1051 1059 padding: 0;
1052 1060 }
1053 1061
1054 1062 ul#graphnodes li .info {
1055 1063 display: block;
1056 1064 font-size: 70%;
1057 1065 position: relative;
1058 1066 top: -1px;
1059 1067 }
1060 1068
1061 1069 Stop and restart with HGENCODING=cp932
1062 1070
1063 1071 $ "$TESTDIR/killdaemons.py"
1064 1072 $ HGENCODING=cp932 hg serve --config server.uncompressed=False -n test \
1065 1073 > -p $HGPORT -d --pid-file=hg.pid -E errors.log
1066 1074 $ cat hg.pid >> $DAEMON_PIDS
1067 1075
1068 1076 commit message with Japanese Kanji 'Noh', which ends with '\x5c'
1069 1077
1070 1078 $ echo foo >> foo
1071 1079 $ HGENCODING=cp932 hg ci -m `python -c 'print("\x94\x5c")'`
1072 1080
1073 1081 Graph json escape of multibyte character
1074 1082
1075 1083 $ "$TESTDIR/get-with-headers.py" 127.0.0.1:$HGPORT '/graph/' \
1076 1084 > | grep '^var data ='
1077 1085 var data = [["40b4d6888e92", [0, 1], [[0, 0, 1]], "\u80fd", "test", "1970-01-01", ["stable", true], ["tip"], ["something"]], ["1d22e65f027e", [0, 1], [[0, 0, 1]], "branch", "test", "1970-01-01", ["stable", false], [], []], ["a4f92ed23982", [0, 1], [[0, 0, 1]], "Added tag 1.0 for changeset 2ef0ac749a14", "test", "1970-01-01", ["default", true], [], []], ["2ef0ac749a14", [0, 1], [], "base", "test", "1970-01-01", ["default", false], ["1.0"], []]];
1078 1086
1079 1087 ERRORS ENCOUNTERED
1080 1088
1081 1089 $ cat errors.log
@@ -1,433 +1,437
1 1 Some tests for hgweb. Tests static files, plain files and different 404's.
2 2
3 3 $ hg init test
4 4 $ cd test
5 5 $ mkdir da
6 6 $ echo foo > da/foo
7 7 $ echo foo > foo
8 8 $ hg ci -Ambase
9 9 adding da/foo
10 10 adding foo
11 11 $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
12 12 $ cat hg.pid >> $DAEMON_PIDS
13 13
14 14 manifest
15 15
16 16 $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/?style=raw')
17 17 200 Script output follows
18 18
19 19
20 20 drwxr-xr-x da
21 21 -rw-r--r-- 4 foo
22 22
23 23
24 24 $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/da?style=raw')
25 25 200 Script output follows
26 26
27 27
28 28 -rw-r--r-- 4 foo
29 29
30 30
31 31
32 32 plain file
33 33
34 34 $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/foo?style=raw'
35 35 200 Script output follows
36 36
37 37 foo
38 38
39 39 should give a 404 - static file that does not exist
40 40
41 41 $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/static/bogus'
42 42 404 Not Found
43 43
44 44 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
45 45 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
46 46 <head>
47 47 <link rel="icon" href="/static/hgicon.png" type="image/png" />
48 48 <meta name="robots" content="index, nofollow" />
49 49 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
50 50
51 51 <title>test: error</title>
52 52 </head>
53 53 <body>
54 54
55 55 <div class="container">
56 56 <div class="menu">
57 57 <div class="logo">
58 58 <a href="http://mercurial.selenic.com/">
59 59 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
60 60 </div>
61 61 <ul>
62 62 <li><a href="/shortlog">log</a></li>
63 63 <li><a href="/graph">graph</a></li>
64 64 <li><a href="/tags">tags</a></li>
65 65 <li><a href="/bookmarks">bookmarks</a></li>
66 66 <li><a href="/branches">branches</a></li>
67 67 <li><a href="/help">help</a></li>
68 68 </ul>
69 69 </div>
70 70
71 71 <div class="main">
72 72
73 73 <h2><a href="/">test</a></h2>
74 74 <h3>error</h3>
75 75
76 76 <form class="search" action="/log">
77 77
78 78 <p><input name="rev" id="search1" type="text" size="30"></p>
79 79 <div id="hint">find changesets by author, revision,
80 80 files, or words in the commit message</div>
81 81 </form>
82 82
83 83 <div class="description">
84 84 <p>
85 85 An error occurred while processing your request:
86 86 </p>
87 87 <p>
88 88 Not Found
89 89 </p>
90 90 </div>
91 91 </div>
92 92 </div>
93 93
94 94
95 95
96 96 </body>
97 97 </html>
98 98
99 99 [1]
100 100
101 101 should give a 404 - bad revision
102 102
103 103 $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/spam/foo?style=raw'
104 104 404 Not Found
105 105
106 106
107 107 error: revision not found: spam
108 108 [1]
109 109
110 110 should give a 400 - bad command
111 111
112 112 $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/foo?cmd=spam&style=raw'
113 113 400* (glob)
114 114
115 115
116 116 error: no such method: spam
117 117 [1]
118 118
119 119 should give a 404 - file does not exist
120 120
121 121 $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/bork?style=raw'
122 122 404 Not Found
123 123
124 124
125 125 error: bork@2ef0ac749a14: not found in manifest
126 126 [1]
127 127 $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/bork'
128 128 404 Not Found
129 129
130 130 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
131 131 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
132 132 <head>
133 133 <link rel="icon" href="/static/hgicon.png" type="image/png" />
134 134 <meta name="robots" content="index, nofollow" />
135 135 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
136 136
137 137 <title>test: error</title>
138 138 </head>
139 139 <body>
140 140
141 141 <div class="container">
142 142 <div class="menu">
143 143 <div class="logo">
144 144 <a href="http://mercurial.selenic.com/">
145 145 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
146 146 </div>
147 147 <ul>
148 148 <li><a href="/shortlog">log</a></li>
149 149 <li><a href="/graph">graph</a></li>
150 150 <li><a href="/tags">tags</a></li>
151 151 <li><a href="/bookmarks">bookmarks</a></li>
152 152 <li><a href="/branches">branches</a></li>
153 153 <li><a href="/help">help</a></li>
154 154 </ul>
155 155 </div>
156 156
157 157 <div class="main">
158 158
159 159 <h2><a href="/">test</a></h2>
160 160 <h3>error</h3>
161 161
162 162 <form class="search" action="/log">
163 163
164 164 <p><input name="rev" id="search1" type="text" size="30"></p>
165 165 <div id="hint">find changesets by author, revision,
166 166 files, or words in the commit message</div>
167 167 </form>
168 168
169 169 <div class="description">
170 170 <p>
171 171 An error occurred while processing your request:
172 172 </p>
173 173 <p>
174 174 bork@2ef0ac749a14: not found in manifest
175 175 </p>
176 176 </div>
177 177 </div>
178 178 </div>
179 179
180 180
181 181
182 182 </body>
183 183 </html>
184 184
185 185 [1]
186 186 $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/diff/tip/bork?style=raw'
187 187 404 Not Found
188 188
189 189
190 190 error: bork@2ef0ac749a14: not found in manifest
191 191 [1]
192 192
193 193 try bad style
194 194
195 195 $ ("$TESTDIR/get-with-headers.py" localhost:$HGPORT '/file/tip/?style=foobar')
196 196 200 Script output follows
197 197
198 198 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
199 199 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
200 200 <head>
201 201 <link rel="icon" href="/static/hgicon.png" type="image/png" />
202 202 <meta name="robots" content="index, nofollow" />
203 203 <link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
204 204
205 205 <title>test: 2ef0ac749a14 /</title>
206 206 </head>
207 207 <body>
208 208
209 209 <div class="container">
210 210 <div class="menu">
211 211 <div class="logo">
212 212 <a href="http://mercurial.selenic.com/">
213 213 <img src="/static/hglogo.png" alt="mercurial" /></a>
214 214 </div>
215 215 <ul>
216 216 <li><a href="/shortlog/2ef0ac749a14">log</a></li>
217 217 <li><a href="/graph/2ef0ac749a14">graph</a></li>
218 218 <li><a href="/tags">tags</a></li>
219 219 <li><a href="/bookmarks">bookmarks</a></li>
220 220 <li><a href="/branches">branches</a></li>
221 221 </ul>
222 222 <ul>
223 223 <li><a href="/rev/2ef0ac749a14">changeset</a></li>
224 224 <li class="active">browse</li>
225 225 </ul>
226 226 <ul>
227 227
228 228 </ul>
229 229 <ul>
230 230 <li><a href="/help">help</a></li>
231 231 </ul>
232 232 </div>
233 233
234 234 <div class="main">
235 235 <h2><a href="/">test</a></h2>
236 236 <h3>directory / @ 0:2ef0ac749a14 <span class="tag">tip</span> </h3>
237 237
238 238 <form class="search" action="/log">
239 239
240 240 <p><input name="rev" id="search1" type="text" size="30" /></p>
241 241 <div id="hint">find changesets by author, revision,
242 242 files, or words in the commit message</div>
243 243 </form>
244 244
245 245 <table class="bigtable">
246 246 <tr>
247 247 <th class="name">name</th>
248 248 <th class="size">size</th>
249 249 <th class="permissions">permissions</th>
250 250 </tr>
251 251 <tr class="fileline parity0">
252 252 <td class="name"><a href="/file/2ef0ac749a14/">[up]</a></td>
253 253 <td class="size"></td>
254 254 <td class="permissions">drwxr-xr-x</td>
255 255 </tr>
256 256
257 257 <tr class="fileline parity1">
258 258 <td class="name">
259 259 <a href="/file/2ef0ac749a14/da">
260 260 <img src="/static/coal-folder.png" alt="dir."/> da/
261 261 </a>
262 262 <a href="/file/2ef0ac749a14/da/">
263 263
264 264 </a>
265 265 </td>
266 266 <td class="size"></td>
267 267 <td class="permissions">drwxr-xr-x</td>
268 268 </tr>
269 269
270 270 <tr class="fileline parity0">
271 271 <td class="filename">
272 272 <a href="/file/2ef0ac749a14/foo">
273 273 <img src="/static/coal-file.png" alt="file"/> foo
274 274 </a>
275 275 </td>
276 276 <td class="size">4</td>
277 277 <td class="permissions">-rw-r--r--</td>
278 278 </tr>
279 279 </table>
280 280 </div>
281 281 </div>
282 282
283 283
284 284 </body>
285 285 </html>
286 286
287 287
288 288 stop and restart
289 289
290 290 $ "$TESTDIR/killdaemons.py"
291 291 $ hg serve -p $HGPORT -d --pid-file=hg.pid -A access.log
292 292 $ cat hg.pid >> $DAEMON_PIDS
293 293
294 294 Test the access/error files are opened in append mode
295 295
296 296 $ python -c "print len(file('access.log').readlines()), 'log lines written'"
297 297 10 log lines written
298 298
299 299 static file
300 300
301 301 $ "$TESTDIR/get-with-headers.py" --twice localhost:$HGPORT '/static/style-gitweb.css'
302 302 200 Script output follows
303 303
304 304 body { font-family: sans-serif; font-size: 12px; margin:0px; border:solid #d9d8d1; border-width:1px; margin:10px; }
305 305 a { color:#0000cc; }
306 306 a:hover, a:visited, a:active { color:#880000; }
307 307 div.page_header { height:25px; padding:8px; font-size:18px; font-weight:bold; background-color:#d9d8d1; }
308 308 div.page_header a:visited { color:#0000cc; }
309 309 div.page_header a:hover { color:#880000; }
310 310 div.page_nav { padding:8px; }
311 311 div.page_nav a:visited { color:#0000cc; }
312 312 div.page_path { padding:8px; border:solid #d9d8d1; border-width:0px 0px 1px}
313 313 div.page_footer { padding:4px 8px; background-color: #d9d8d1; }
314 314 div.page_footer_text { float:left; color:#555555; font-style:italic; }
315 315 div.page_body { padding:8px; }
316 316 div.title, a.title {
317 317 display:block; padding:6px 8px;
318 318 font-weight:bold; background-color:#edece6; text-decoration:none; color:#000000;
319 319 }
320 320 a.title:hover { background-color: #d9d8d1; }
321 321 div.title_text { padding:6px 0px; border: solid #d9d8d1; border-width:0px 0px 1px; }
322 322 div.log_body { padding:8px 8px 8px 150px; }
323 323 .age { white-space:nowrap; }
324 324 span.age { position:relative; float:left; width:142px; font-style:italic; }
325 325 div.log_link {
326 326 padding:0px 8px;
327 327 font-size:10px; font-family:sans-serif; font-style:normal;
328 328 position:relative; float:left; width:136px;
329 329 }
330 330 div.list_head { padding:6px 8px 4px; border:solid #d9d8d1; border-width:1px 0px 0px; font-style:italic; }
331 331 a.list { text-decoration:none; color:#000000; }
332 332 a.list:hover { text-decoration:underline; color:#880000; }
333 333 table { padding:8px 4px; }
334 334 th { padding:2px 5px; font-size:12px; text-align:left; }
335 335 tr.light:hover, .parity0:hover { background-color:#edece6; }
336 336 tr.dark, .parity1 { background-color:#f6f6f0; }
337 337 tr.dark:hover, .parity1:hover { background-color:#edece6; }
338 338 td { padding:2px 5px; font-size:12px; vertical-align:top; }
339 339 td.closed { background-color: #99f; }
340 340 td.link { padding:2px 5px; font-family:sans-serif; font-size:10px; }
341 341 td.indexlinks { white-space: nowrap; }
342 342 td.indexlinks a {
343 343 padding: 2px 5px; line-height: 10px;
344 344 border: 1px solid;
345 345 color: #ffffff; background-color: #7777bb;
346 346 border-color: #aaaadd #333366 #333366 #aaaadd;
347 347 font-weight: bold; text-align: center; text-decoration: none;
348 348 font-size: 10px;
349 349 }
350 350 td.indexlinks a:hover { background-color: #6666aa; }
351 351 div.pre { font-family:monospace; font-size:12px; white-space:pre; }
352 352 div.diff_info { font-family:monospace; color:#000099; background-color:#edece6; font-style:italic; }
353 353 div.index_include { border:solid #d9d8d1; border-width:0px 0px 1px; padding:12px 8px; }
354 354 div.search { margin:4px 8px; position:absolute; top:56px; right:12px }
355 355 .linenr { color:#999999; text-decoration:none }
356 356 div.rss_logo { float: right; white-space: nowrap; }
357 357 div.rss_logo a {
358 358 padding:3px 6px; line-height:10px;
359 359 border:1px solid; border-color:#fcc7a5 #7d3302 #3e1a01 #ff954e;
360 360 color:#ffffff; background-color:#ff6600;
361 361 font-weight:bold; font-family:sans-serif; font-size:10px;
362 362 text-align:center; text-decoration:none;
363 363 }
364 364 div.rss_logo a:hover { background-color:#ee5500; }
365 365 pre { margin: 0; }
366 366 span.logtags span {
367 367 padding: 0px 4px;
368 368 font-size: 10px;
369 369 font-weight: normal;
370 370 border: 1px solid;
371 371 background-color: #ffaaff;
372 372 border-color: #ffccff #ff00ee #ff00ee #ffccff;
373 373 }
374 374 span.logtags span.tagtag {
375 375 background-color: #ffffaa;
376 376 border-color: #ffffcc #ffee00 #ffee00 #ffffcc;
377 377 }
378 378 span.logtags span.branchtag {
379 379 background-color: #aaffaa;
380 380 border-color: #ccffcc #00cc33 #00cc33 #ccffcc;
381 381 }
382 382 span.logtags span.inbranchtag {
383 383 background-color: #d5dde6;
384 384 border-color: #e3ecf4 #9398f4 #9398f4 #e3ecf4;
385 385 }
386 span.logtags span.bookmarktag {
387 background-color: #afdffa;
388 border-color: #ccecff #46ace6 #46ace6 #ccecff;
389 }
386 390
387 391 /* Graph */
388 392 div#wrapper {
389 393 position: relative;
390 394 margin: 0;
391 395 padding: 0;
392 396 margin-top: 3px;
393 397 }
394 398
395 399 canvas {
396 400 position: absolute;
397 401 z-index: 5;
398 402 top: -0.9em;
399 403 margin: 0;
400 404 }
401 405
402 406 ul#nodebgs {
403 407 list-style: none inside none;
404 408 padding: 0;
405 409 margin: 0;
406 410 top: -0.7em;
407 411 }
408 412
409 413 ul#graphnodes li, ul#nodebgs li {
410 414 height: 39px;
411 415 }
412 416
413 417 ul#graphnodes {
414 418 position: absolute;
415 419 z-index: 10;
416 420 top: -0.8em;
417 421 list-style: none inside none;
418 422 padding: 0;
419 423 }
420 424
421 425 ul#graphnodes li .info {
422 426 display: block;
423 427 font-size: 100%;
424 428 position: relative;
425 429 top: -3px;
426 430 font-style: italic;
427 431 }
428 432 304 Not Modified
429 433
430 434
431 435 errors
432 436
433 437 $ cat errors.log
General Comments 0
You need to be logged in to leave comments. Login now