##// END OF EJS Templates
dockerlib: allow non-unique uid and gid of $DBUILDUSER (issue4657)...
dockerlib: allow non-unique uid and gid of $DBUILDUSER (issue4657) There are make targets for building mercurial packages for various distributions using docker. One of the preparation steps before building is to create inside the docker image a user with the same uid/gid as the current user on the host system, so that the resulting files have appropriate ownership/permissions. It's possible to run `make docker-<distro>` as a user with uid or gid that is already present in a vanilla docker container of that distibution. For example, issue4657 is about failing to build fedora packages as a user with uid=999 and gid=999 because these ids are already used in fedora, and groupadd fails. useradd would fail too, if the flow ever got to it (and there was a user with such uid already). A straightforward (maybe too much) way to fix this is to allow non-unique uid and gid for the new user and group that get created inside the image. I'm not sure of the implications of this, but marmoute encouraged me to try and send this patch for stable.

File last commit:

r26670:ab2cd800 default
r26888:271a8020 stable
Show More
test-hgweb.t
730 lines | 19.1 KiB | text/troff | Tads3Lexer
Matt Mackall
tests: replace exit 80 with #require
r22046 #require serve
Mads Kiilerich
tests: use 'hghave serve' to guard tests that requires serve daemon management
r15446
Matt Mackall
tests: unify test-hgweb
r12432 Some tests for hgweb. Tests static files, plain files and different 404's.
$ hg init test
$ cd test
$ mkdir da
$ echo foo > da/foo
$ echo foo > foo
$ hg ci -Ambase
adding da/foo
adding foo
av6
hgweb: allow symbolic revisions with forward slashes in urls...
r25777 $ hg bookmark -r0 '@'
$ hg bookmark -r0 'a b c'
$ hg bookmark -r0 'd/e/f'
Matt Mackall
tests: unify test-hgweb
r12432 $ hg serve -n test -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
$ cat hg.pid >> $DAEMON_PIDS
manifest
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ (get-with-headers.py localhost:$HGPORT 'file/tip/?style=raw')
Matt Mackall
tests: unify test-hgweb
r12432 200 Script output follows
drwxr-xr-x da
-rw-r--r-- 4 foo
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ (get-with-headers.py localhost:$HGPORT 'file/tip/da?style=raw')
Matt Mackall
tests: unify test-hgweb
r12432 200 Script output follows
-rw-r--r-- 4 foo
plain file
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT 'file/tip/foo?style=raw'
Matt Mackall
tests: unify test-hgweb
r12432 200 Script output follows
foo
should give a 404 - static file that does not exist
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT 'static/bogus'
Matt Mackall
tests: unify test-hgweb
r12432 404 Not Found
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
<head>
<link rel="icon" href="/static/hgicon.png" type="image/png" />
<meta name="robots" content="index, nofollow" />
<link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
Benoit Allard
web: Made elapsed time calculation dynamic (javascript)....
r14046 <script type="text/javascript" src="/static/mercurial.js"></script>
Matt Mackall
tests: unify test-hgweb
r12432
<title>test: error</title>
</head>
<body>
<div class="container">
<div class="menu">
<div class="logo">
Matt Mackall
urls: bulk-change primary website URLs
r26421 <a href="https://mercurial-scm.org/">
Matt Mackall
tests: unify test-hgweb
r12432 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
</div>
<ul>
<li><a href="/shortlog">log</a></li>
<li><a href="/graph">graph</a></li>
<li><a href="/tags">tags</a></li>
Alexander Solovyov
hgweb: add separate page with bookmarks listing
r13597 <li><a href="/bookmarks">bookmarks</a></li>
Matt Mackall
tests: unify test-hgweb
r12432 <li><a href="/branches">branches</a></li>
Ross Lagerwall
hgweb: make paper:error consistent with template...
r17290 </ul>
<ul>
Augie Fackler
hgweb: add help link to templates missed in ead4e21f49f1
r12680 <li><a href="/help">help</a></li>
Matt Mackall
tests: unify test-hgweb
r12432 </ul>
</div>
<div class="main">
Bryan O'Sullivan
tests: update hgweb tests to include breadcrumbs
r18264 <h2 class="breadcrumb"><a href="/">Mercurial</a> </h2>
Matt Mackall
tests: unify test-hgweb
r12432 <h3>error</h3>
<form class="search" action="/log">
<p><input name="rev" id="search1" type="text" size="30"></p>
Alexander Plavin
paper: edit search hint to include new feature description
r19796 <div id="hint">Find changesets by keywords (author, files, the commit message), revision
number or hash, or <a href="/help/revsets">revset expression</a>.</div>
Matt Mackall
tests: unify test-hgweb
r12432 </form>
<div class="description">
<p>
An error occurred while processing your request:
</p>
<p>
Not Found
</p>
</div>
</div>
</div>
Benoit Allard
web: Made elapsed time calculation dynamic (javascript)....
r14046 <script type="text/javascript">process_dates()</script>
Matt Mackall
tests: unify test-hgweb
r12432
</body>
</html>
[1]
should give a 404 - bad revision
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT 'file/spam/foo?style=raw'
Matt Mackall
tests: unify test-hgweb
r12432 404 Not Found
error: revision not found: spam
[1]
should give a 400 - bad command
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT 'file/tip/foo?cmd=spam&style=raw'
Matt Mackall
tests: unify test-hgweb
r12432 400* (glob)
error: no such method: spam
[1]
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py --headeronly localhost:$HGPORT '?cmd=spam'
Anton Shestakov
hgweb: fail if an invalid command was supplied in url path (issue4071)...
r22506 400 no such method: spam
[1]
should give a 400 - bad command as a part of url path (issue4071)
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py --headeronly localhost:$HGPORT 'spam'
Anton Shestakov
hgweb: fail if an invalid command was supplied in url path (issue4071)...
r22506 400 no such method: spam
[1]
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py --headeronly localhost:$HGPORT 'raw-spam'
Anton Shestakov
hgweb: fail if an invalid command was supplied in url path (issue4071)...
r22506 400 no such method: spam
[1]
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py --headeronly localhost:$HGPORT 'spam/tip/foo'
Anton Shestakov
hgweb: fail if an invalid command was supplied in url path (issue4071)...
r22506 400 no such method: spam
[1]
Matt Mackall
tests: unify test-hgweb
r12432 should give a 404 - file does not exist
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT 'file/tip/bork?style=raw'
Matt Mackall
tests: unify test-hgweb
r12432 404 Not Found
error: bork@2ef0ac749a14: not found in manifest
[1]
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT 'file/tip/bork'
Matt Mackall
tests: unify test-hgweb
r12432 404 Not Found
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
<head>
<link rel="icon" href="/static/hgicon.png" type="image/png" />
<meta name="robots" content="index, nofollow" />
<link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
Benoit Allard
web: Made elapsed time calculation dynamic (javascript)....
r14046 <script type="text/javascript" src="/static/mercurial.js"></script>
Matt Mackall
tests: unify test-hgweb
r12432
<title>test: error</title>
</head>
<body>
<div class="container">
<div class="menu">
<div class="logo">
Matt Mackall
urls: bulk-change primary website URLs
r26421 <a href="https://mercurial-scm.org/">
Matt Mackall
tests: unify test-hgweb
r12432 <img src="/static/hglogo.png" width=75 height=90 border=0 alt="mercurial" /></a>
</div>
<ul>
<li><a href="/shortlog">log</a></li>
<li><a href="/graph">graph</a></li>
<li><a href="/tags">tags</a></li>
Alexander Solovyov
hgweb: add separate page with bookmarks listing
r13597 <li><a href="/bookmarks">bookmarks</a></li>
Matt Mackall
tests: unify test-hgweb
r12432 <li><a href="/branches">branches</a></li>
Ross Lagerwall
hgweb: make paper:error consistent with template...
r17290 </ul>
<ul>
Augie Fackler
hgweb: add help link to templates missed in ead4e21f49f1
r12680 <li><a href="/help">help</a></li>
Matt Mackall
tests: unify test-hgweb
r12432 </ul>
</div>
<div class="main">
Bryan O'Sullivan
tests: update hgweb tests to include breadcrumbs
r18264 <h2 class="breadcrumb"><a href="/">Mercurial</a> </h2>
Matt Mackall
tests: unify test-hgweb
r12432 <h3>error</h3>
<form class="search" action="/log">
<p><input name="rev" id="search1" type="text" size="30"></p>
Alexander Plavin
paper: edit search hint to include new feature description
r19796 <div id="hint">Find changesets by keywords (author, files, the commit message), revision
number or hash, or <a href="/help/revsets">revset expression</a>.</div>
Matt Mackall
tests: unify test-hgweb
r12432 </form>
<div class="description">
<p>
An error occurred while processing your request:
</p>
<p>
bork@2ef0ac749a14: not found in manifest
</p>
</div>
</div>
</div>
Benoit Allard
web: Made elapsed time calculation dynamic (javascript)....
r14046 <script type="text/javascript">process_dates()</script>
Matt Mackall
tests: unify test-hgweb
r12432
</body>
</html>
[1]
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT 'diff/tip/bork?style=raw'
Matt Mackall
tests: unify test-hgweb
r12432 404 Not Found
error: bork@2ef0ac749a14: not found in manifest
[1]
try bad style
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ (get-with-headers.py localhost:$HGPORT 'file/tip/?style=foobar')
Matt Mackall
tests: unify test-hgweb
r12432 200 Script output follows
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
<head>
<link rel="icon" href="/static/hgicon.png" type="image/png" />
<meta name="robots" content="index, nofollow" />
<link rel="stylesheet" href="/static/style-paper.css" type="text/css" />
Benoit Allard
web: Made elapsed time calculation dynamic (javascript)....
r14046 <script type="text/javascript" src="/static/mercurial.js"></script>
Matt Mackall
tests: unify test-hgweb
r12432
<title>test: 2ef0ac749a14 /</title>
</head>
<body>
<div class="container">
<div class="menu">
<div class="logo">
Matt Mackall
urls: bulk-change primary website URLs
r26421 <a href="https://mercurial-scm.org/">
Matt Mackall
tests: unify test-hgweb
r12432 <img src="/static/hglogo.png" alt="mercurial" /></a>
</div>
<ul>
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <li><a href="/shortlog/tip">log</a></li>
<li><a href="/graph/tip">graph</a></li>
Matt Mackall
tests: unify test-hgweb
r12432 <li><a href="/tags">tags</a></li>
Alexander Solovyov
hgweb: add separate page with bookmarks listing
r13597 <li><a href="/bookmarks">bookmarks</a></li>
Matt Mackall
tests: unify test-hgweb
r12432 <li><a href="/branches">branches</a></li>
</ul>
<ul>
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <li><a href="/rev/tip">changeset</a></li>
Matt Mackall
tests: unify test-hgweb
r12432 <li class="active">browse</li>
</ul>
<ul>
</ul>
Augie Fackler
web: add a help view for getting hg help output
r12666 <ul>
<li><a href="/help">help</a></li>
</ul>
Matt Mackall
tests: unify test-hgweb
r12432 </div>
<div class="main">
Bryan O'Sullivan
tests: update hgweb tests to include breadcrumbs
r18264 <h2 class="breadcrumb"><a href="/">Mercurial</a> </h2>
av6
hgweb: link to revision by node hash in paper & coal...
r25617 <h3>
directory / @ 0:<a href="/rev/2ef0ac749a14">2ef0ac749a14</a>
av6
hgweb: allow symbolic revisions with forward slashes in urls...
r25777 <span class="tag">tip</span> <span class="tag">@</span> <span class="tag">a b c</span> <span class="tag">d/e/f</span>
av6
hgweb: link to revision by node hash in paper & coal...
r25617 </h3>
Matt Mackall
tests: unify test-hgweb
r12432
<form class="search" action="/log">
<p><input name="rev" id="search1" type="text" size="30" /></p>
Alexander Plavin
paper: edit search hint to include new feature description
r19796 <div id="hint">Find changesets by keywords (author, files, the commit message), revision
number or hash, or <a href="/help/revsets">revset expression</a>.</div>
Matt Mackall
tests: unify test-hgweb
r12432 </form>
<table class="bigtable">
Anton Shestakov
hgweb: replace implicit <tbody> with explicit <thead> where appropriate...
r24054 <thead>
Matt Mackall
tests: unify test-hgweb
r12432 <tr>
<th class="name">name</th>
<th class="size">size</th>
<th class="permissions">permissions</th>
</tr>
Anton Shestakov
hgweb: replace implicit <tbody> with explicit <thead> where appropriate...
r24054 </thead>
Alexander Plavin
hgweb: make stripes in directory view with CSS
r19447 <tbody class="stripes2">
<tr class="fileline">
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <td class="name"><a href="/file/tip/">[up]</a></td>
Matt Mackall
tests: unify test-hgweb
r12432 <td class="size"></td>
<td class="permissions">drwxr-xr-x</td>
</tr>
Alexander Plavin
hgweb: make stripes in directory view with CSS
r19447 <tr class="fileline">
Matt Mackall
tests: unify test-hgweb
r12432 <td class="name">
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <a href="/file/tip/da">
Matt Mackall
tests: unify test-hgweb
r12432 <img src="/static/coal-folder.png" alt="dir."/> da/
</a>
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <a href="/file/tip/da/">
Matt Mackall
tests: unify test-hgweb
r12432
</a>
</td>
<td class="size"></td>
<td class="permissions">drwxr-xr-x</td>
</tr>
Alexander Plavin
hgweb: make stripes in directory view with CSS
r19447 <tr class="fileline">
Matt Mackall
tests: unify test-hgweb
r12432 <td class="filename">
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <a href="/file/tip/foo">
Matt Mackall
tests: unify test-hgweb
r12432 <img src="/static/coal-file.png" alt="file"/> foo
</a>
</td>
<td class="size">4</td>
<td class="permissions">-rw-r--r--</td>
</tr>
Alexander Plavin
hgweb: make stripes in directory view with CSS
r19447 </tbody>
Matt Mackall
tests: unify test-hgweb
r12432 </table>
</div>
</div>
Benoit Allard
web: Made elapsed time calculation dynamic (javascript)....
r14046 <script type="text/javascript">process_dates()</script>
Matt Mackall
tests: unify test-hgweb
r12432
</body>
</html>
stop and restart
Matt Mackall
tests: drop DAEMON_PIDS from killdaemons calls
r25474 $ killdaemons.py
Matt Mackall
tests: unify test-hgweb
r12432 $ hg serve -p $HGPORT -d --pid-file=hg.pid -A access.log
$ cat hg.pid >> $DAEMON_PIDS
Test the access/error files are opened in append mode
Augie Fackler
tests: use $PYTHON instead of hardcoding python...
r22947 $ $PYTHON -c "print len(file('access.log').readlines()), 'log lines written'"
Anton Shestakov
hgweb: fail if an invalid command was supplied in url path (issue4071)...
r22506 14 log lines written
Matt Mackall
tests: unify test-hgweb
r12432
static file
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py --twice localhost:$HGPORT 'static/style-gitweb.css' - date etag server
Matt Mackall
tests: unify test-hgweb
r12432 200 Script output follows
av6
gitweb: visually highlight source lines when hovering over line numbers...
r26670 content-length: 6521
Mads Kiilerich
serve: don't send any content headers with 304 responses...
r18380 content-type: text/css
Matt Mackall
tests: unify test-hgweb
r12432
Gijs Kruitbosch
hgweb: ensure both foreground and background colors are specified (issue4872)...
r26536 body { font-family: sans-serif; font-size: 12px; border:solid #d9d8d1; border-width:1px; margin:10px; background: white; color: black; }
Matt Mackall
tests: unify test-hgweb
r12432 a { color:#0000cc; }
a:hover, a:visited, a:active { color:#880000; }
div.page_header { height:25px; padding:8px; font-size:18px; font-weight:bold; background-color:#d9d8d1; }
div.page_header a:visited { color:#0000cc; }
div.page_header a:hover { color:#880000; }
div.page_nav { padding:8px; }
div.page_nav a:visited { color:#0000cc; }
div.page_path { padding:8px; border:solid #d9d8d1; border-width:0px 0px 1px}
div.page_footer { padding:4px 8px; background-color: #d9d8d1; }
div.page_footer_text { float:left; color:#555555; font-style:italic; }
div.page_body { padding:8px; }
div.title, a.title {
display:block; padding:6px 8px;
font-weight:bold; background-color:#edece6; text-decoration:none; color:#000000;
}
a.title:hover { background-color: #d9d8d1; }
div.title_text { padding:6px 0px; border: solid #d9d8d1; border-width:0px 0px 1px; }
div.log_body { padding:8px 8px 8px 150px; }
.age { white-space:nowrap; }
span.age { position:relative; float:left; width:142px; font-style:italic; }
div.log_link {
padding:0px 8px;
font-size:10px; font-family:sans-serif; font-style:normal;
position:relative; float:left; width:136px;
}
div.list_head { padding:6px 8px 4px; border:solid #d9d8d1; border-width:1px 0px 0px; font-style:italic; }
a.list { text-decoration:none; color:#000000; }
a.list:hover { text-decoration:underline; color:#880000; }
table { padding:8px 4px; }
th { padding:2px 5px; font-size:12px; text-align:left; }
av6
gitweb: visually highlight source lines when hovering over line numbers...
r26670 tr.dark, .parity1, pre.sourcelines.stripes > :nth-child(4n+4) { background-color:#f6f6f0; }
tr.light:hover, .parity0:hover, tr.dark:hover, .parity1:hover,
pre.sourcelines.stripes > :nth-child(4n+2):hover,
pre.sourcelines.stripes > :nth-child(4n+4):hover,
pre.sourcelines.stripes > :nth-child(4n+1):hover + :nth-child(4n+2),
pre.sourcelines.stripes > :nth-child(4n+3):hover + :nth-child(4n+4) { background-color:#edece6; }
Matt Mackall
tests: unify test-hgweb
r12432 td { padding:2px 5px; font-size:12px; vertical-align:top; }
td.closed { background-color: #99f; }
td.link { padding:2px 5px; font-family:sans-serif; font-size:10px; }
td.indexlinks { white-space: nowrap; }
td.indexlinks a {
padding: 2px 5px; line-height: 10px;
border: 1px solid;
color: #ffffff; background-color: #7777bb;
border-color: #aaaadd #333366 #333366 #aaaadd;
font-weight: bold; text-align: center; text-decoration: none;
font-size: 10px;
}
td.indexlinks a:hover { background-color: #6666aa; }
div.pre { font-family:monospace; font-size:12px; white-space:pre; }
div.diff_info { font-family:monospace; color:#000099; background-color:#edece6; font-style:italic; }
div.index_include { border:solid #d9d8d1; border-width:0px 0px 1px; padding:12px 8px; }
div.search { margin:4px 8px; position:absolute; top:56px; right:12px }
.linenr { color:#999999; text-decoration:none }
div.rss_logo { float: right; white-space: nowrap; }
div.rss_logo a {
padding:3px 6px; line-height:10px;
border:1px solid; border-color:#fcc7a5 #7d3302 #3e1a01 #ff954e;
color:#ffffff; background-color:#ff6600;
font-weight:bold; font-family:sans-serif; font-size:10px;
text-align:center; text-decoration:none;
}
div.rss_logo a:hover { background-color:#ee5500; }
pre { margin: 0; }
span.logtags span {
padding: 0px 4px;
font-size: 10px;
font-weight: normal;
border: 1px solid;
background-color: #ffaaff;
border-color: #ffccff #ff00ee #ff00ee #ffccff;
}
span.logtags span.tagtag {
background-color: #ffffaa;
border-color: #ffffcc #ffee00 #ffee00 #ffffcc;
}
span.logtags span.branchtag {
background-color: #aaffaa;
border-color: #ccffcc #00cc33 #00cc33 #ccffcc;
}
span.logtags span.inbranchtag {
background-color: #d5dde6;
border-color: #e3ecf4 #9398f4 #9398f4 #e3ecf4;
}
Yuya Nishihara
hgweb: add bookmark labels to gitweb theme (based on 270f57d35525)
r13863 span.logtags span.bookmarktag {
background-color: #afdffa;
border-color: #ccecff #46ace6 #46ace6 #ccecff;
}
Gregory Szorc
templates: use CSS classes for diff styling...
r23744 span.difflineplus { color:#008800; }
span.difflineminus { color:#cc0000; }
span.difflineat { color:#990099; }
av6
gitweb: port code selection without line numbers from paper...
r26288 div.diffblocks { counter-reset: lineno; }
div.diffblock { counter-increment: lineno; }
pre.sourcelines { position: relative; counter-reset: lineno; }
pre.sourcelines > span {
display: inline-block;
box-sizing: border-box;
width: 100%;
padding: 0 0 0 5em;
counter-increment: lineno;
av6
gitweb, monoblue: fix vertical align of spans in .sourcelines...
r26362 vertical-align: top;
av6
gitweb: port code selection without line numbers from paper...
r26288 }
pre.sourcelines > span:before {
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
-ms-user-select: none;
user-select: none;
display: inline-block;
margin-left: -5em;
width: 4em;
color: #999;
text-align: right;
content: counters(lineno,".");
float: left;
}
pre.sourcelines > a {
display: inline-block;
position: absolute;
left: 0px;
width: 4em;
height: 1em;
}
av6
gitweb, monoblue: port highlighting linked lines from paper...
r26363 tr:target td,
pre.sourcelines > span:target,
pre.sourcelines.stripes > span:target {
background-color: #bfdfff;
}
Matt Mackall
tests: unify test-hgweb
r12432
/* Graph */
div#wrapper {
position: relative;
margin: 0;
padding: 0;
margin-top: 3px;
}
canvas {
position: absolute;
z-index: 5;
top: -0.9em;
margin: 0;
}
ul#nodebgs {
list-style: none inside none;
padding: 0;
margin: 0;
top: -0.7em;
}
ul#graphnodes li, ul#nodebgs li {
height: 39px;
}
ul#graphnodes {
position: absolute;
z-index: 10;
top: -0.8em;
list-style: none inside none;
padding: 0;
}
ul#graphnodes li .info {
display: block;
font-size: 100%;
position: relative;
top: -3px;
font-style: italic;
}
wujek srujek
hgweb: side-by-side comparison functionality...
r17202
/* Comparison */
.legend {
padding: 1.5% 0 1.5% 0;
}
.legendinfo {
border: 1px solid #d9d8d1;
font-size: 80%;
text-align: center;
padding: 0.5%;
}
.equal {
background-color: #ffffff;
}
.delete {
Matt Mackall
hgweb: improve colors for comparison page...
r17243 background-color: #faa;
color: #333;
wujek srujek
hgweb: side-by-side comparison functionality...
r17202 }
.insert {
Matt Mackall
hgweb: improve colors for comparison page...
r17243 background-color: #ffa;
wujek srujek
hgweb: side-by-side comparison functionality...
r17202 }
.replace {
Matt Mackall
hgweb: improve colors for comparison page...
r17243 background-color: #e8e8e8;
wujek srujek
hgweb: side-by-side comparison functionality...
r17202 }
.comparison {
overflow-x: auto;
}
.header th {
text-align: center;
}
.block {
border-top: 1px solid #d9d8d1;
}
Augie Fackler
test-hgweb-*: output change fixes from b1d65cb8
r20256
.scroll-loading {
-webkit-animation: change_color 1s linear 0s infinite alternate;
-moz-animation: change_color 1s linear 0s infinite alternate;
-o-animation: change_color 1s linear 0s infinite alternate;
animation: change_color 1s linear 0s infinite alternate;
}
@-webkit-keyframes change_color {
from { background-color: #A0CEFF; } to { }
}
@-moz-keyframes change_color {
from { background-color: #A0CEFF; } to { }
}
@-o-keyframes change_color {
from { background-color: #A0CEFF; } to { }
}
@keyframes change_color {
from { background-color: #A0CEFF; } to { }
}
.scroll-loading-error {
background-color: #FFCCCC !important;
}
av6
tests: fix css-related test-hgweb.t breakage from 93258d53ec35
r26175
#doc {
margin: 0 8px;
}
Matt Mackall
tests: unify test-hgweb
r12432 304 Not Modified
Anton Shestakov
hgweb: refresh hgweb.repo on phase change (issue4061)...
r22577 phase changes are refreshed (issue4061)
$ echo bar >> foo
$ hg ci -msecret --secret
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT 'log?style=raw'
Anton Shestakov
hgweb: refresh hgweb.repo on phase change (issue4061)...
r22577 200 Script output follows
# HG changelog
# Node ID 2ef0ac749a14e4f57a5a822464a0902c6f7f448f
changeset: 2ef0ac749a14e4f57a5a822464a0902c6f7f448f
revision: 0
user: test
date: Thu, 01 Jan 1970 00:00:00 +0000
summary: base
branch: default
tag: tip
av6
hgweb: allow symbolic revisions with forward slashes in urls...
r25777 bookmark: @
bookmark: a b c
bookmark: d/e/f
Anton Shestakov
hgweb: refresh hgweb.repo on phase change (issue4061)...
r22577
$ hg phase --draft tip
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT 'log?style=raw'
Anton Shestakov
hgweb: refresh hgweb.repo on phase change (issue4061)...
r22577 200 Script output follows
# HG changelog
# Node ID a084749e708a9c4c0a5b652a2a446322ce290e04
changeset: a084749e708a9c4c0a5b652a2a446322ce290e04
revision: 1
user: test
date: Thu, 01 Jan 1970 00:00:00 +0000
summary: secret
branch: default
tag: tip
changeset: 2ef0ac749a14e4f57a5a822464a0902c6f7f448f
revision: 0
user: test
date: Thu, 01 Jan 1970 00:00:00 +0000
summary: base
av6
hgweb: allow symbolic revisions with forward slashes in urls...
r25777 bookmark: @
bookmark: a b c
bookmark: d/e/f
Anton Shestakov
hgweb: refresh hgweb.repo on phase change (issue4061)...
r22577
av6
hgweb: allow symbolic revisions with forward slashes in urls...
r25777 access bookmarks
$ get-with-headers.py localhost:$HGPORT 'rev/@?style=paper' | egrep '^200|changeset 0:'
200 Script output follows
changeset 0:<a href="/rev/2ef0ac749a14?style=paper">2ef0ac749a14</a>
$ get-with-headers.py localhost:$HGPORT 'rev/%40?style=paper' | egrep '^200|changeset 0:'
200 Script output follows
changeset 0:<a href="/rev/2ef0ac749a14?style=paper">2ef0ac749a14</a>
$ get-with-headers.py localhost:$HGPORT 'rev/a%20b%20c?style=paper' | egrep '^200|changeset 0:'
200 Script output follows
changeset 0:<a href="/rev/2ef0ac749a14?style=paper">2ef0ac749a14</a>
$ get-with-headers.py localhost:$HGPORT 'rev/d%252Fe%252Ff?style=paper' | egrep '^200|changeset 0:'
200 Script output follows
changeset 0:<a href="/rev/2ef0ac749a14?style=paper">2ef0ac749a14</a>
Yuya Nishihara
hgweb: prevent loading style map from directories other than specified paths...
r24296 no style can be loaded from directories other than the specified paths
$ mkdir -p x/templates/fallback
$ cat <<EOF > x/templates/fallback/map
> default = 'shortlog'
> shortlog = 'fall back to default\n'
> mimetype = 'text/plain'
> EOF
$ cat <<EOF > x/map
> default = 'shortlog'
> shortlog = 'access to outside of templates directory\n'
> mimetype = 'text/plain'
> EOF
Matt Mackall
tests: drop DAEMON_PIDS from killdaemons calls
r25474 $ killdaemons.py
Yuya Nishihara
hgweb: prevent loading style map from directories other than specified paths...
r24296 $ hg serve -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log \
> --config web.style=fallback --config web.templates=x/templates
$ cat hg.pid >> $DAEMON_PIDS
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT "?style=`pwd`/x"
Yuya Nishihara
hgweb: prevent loading style map from directories other than specified paths...
r24296 200 Script output follows
fall back to default
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT '?style=..'
Yuya Nishihara
hgweb: prevent loading style map from directories other than specified paths...
r24296 200 Script output follows
fall back to default
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT '?style=./..'
Yuya Nishihara
hgweb: prevent loading style map from directories other than specified paths...
r24296 200 Script output follows
fall back to default
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT '?style=.../.../'
Yuya Nishihara
hgweb: prevent loading style map from directories other than specified paths...
r24296 200 Script output follows
fall back to default
Matt Mackall
tests: unify test-hgweb
r12432 errors
$ cat errors.log
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913
Gregory Szorc
hgweb: send proper HTTP response after uncaught exception...
r23409 Uncaught exceptions result in a logged error and canned HTTP response
Matt Mackall
tests: drop DAEMON_PIDS from killdaemons calls
r25474 $ killdaemons.py
Gregory Szorc
hgweb: send proper HTTP response after uncaught exception...
r23409 $ hg --config extensions.hgweberror=$TESTDIR/hgweberror.py serve -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
$ cat hg.pid >> $DAEMON_PIDS
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT 'raiseerror' transfer-encoding content-type
Gregory Szorc
hgweb: send proper HTTP response after uncaught exception...
r23409 500 Internal Server Error
transfer-encoding: chunked
Internal Server Error (no-eol)
[1]
Matt Mackall
tests: drop DAEMON_PIDS from killdaemons calls
r25474 $ killdaemons.py
Gregory Szorc
hgweb: send proper HTTP response after uncaught exception...
r23409 $ head -1 errors.log
.* Exception happened during processing request '/raiseerror': (re)
Uncaught exception after partial content sent
Matt Mackall
test-hgweb: fix shutdown race...
r23952 $ hg --config extensions.hgweberror=$TESTDIR/hgweberror.py serve -p $HGPORT -d --pid-file=hg.pid -A access.log -E errors.log
$ cat hg.pid >> $DAEMON_PIDS
Matt Mackall
tests: drop explicit $TESTDIR from executables...
r25472 $ get-with-headers.py localhost:$HGPORT 'raiseerror?partialresponse=1' transfer-encoding content-type
Gregory Szorc
hgweb: send proper HTTP response after uncaught exception...
r23409 200 Script output follows
transfer-encoding: chunked
content-type: text/plain
partial content
Internal Server Error (no-eol)
Matt Mackall
tests: drop DAEMON_PIDS from killdaemons calls
r25474 $ killdaemons.py
Mads Kiilerich
tests: add missing trailing 'cd ..'...
r16913 $ cd ..