##// END OF EJS Templates
hgweb: refactor the request draining code...
hgweb: refactor the request draining code The previous code for draining was only invoked in a few places in the wire protocol. Behavior wasn't consist. Furthermore, it was difficult to reason about. With us converting the input stream to a capped reader, it is now safe to always drain the input stream when its size is known because we can never overrun the input and read into the next HTTP request. The only question is "should we?" This commit changes the draining code so every request is examined. Draining now kicks in for a few requests where it wouldn't before. But I think the code is sufficiently restricted so the behavior is safe. Possibly the most dangerous part of this code is the issuing of Connection: close for POST and PUT requests that don't have a Content-Length. I don't think there are any such uses in our WSGI application, so this should be safe. In the near future, I plan to significantly refactor the WSGI response handling. I anticipate this code evolving a bit. So any minor regressions around draining or connection closing behavior might be fixed as a result of that work. All tests pass with this change. That scares me a bit because it means we are lacking low-level tests for the HTTP protocol. Differential Revision: https://phab.mercurial-scm.org/D2769

File last commit:

r36340:f3fd4fe0 default
r36871:2cdf47e1 default
Show More
changeset.tmpl
91 lines | 2.5 KiB | application/x-cheetah | CheetahLexer
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 {header}
<title>{repo|escape}: {node|short}</title>
</head>
<body>
<div class="container">
<div class="menu">
<div class="logo">
Steven Stallion
hgweb: support alternate logo url...
r13964 <a href="{logourl}">
Thomas Arendsen Hein
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names...
r18526 <img src="{staticurl|urlescape}{logoimg}" alt="mercurial" /></a>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 </div>
<ul>
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <li><a href="{url|urlescape}shortlog/{symrev}{sessionvars%urlparameter}">log</a></li>
<li><a href="{url|urlescape}graph/{symrev}{sessionvars%urlparameter}">graph</a></li>
Thomas Arendsen Hein
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names...
r18526 <li><a href="{url|urlescape}tags{sessionvars%urlparameter}">tags</a></li>
<li><a href="{url|urlescape}bookmarks{sessionvars%urlparameter}">bookmarks</a></li>
<li><a href="{url|urlescape}branches{sessionvars%urlparameter}">branches</a></li>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 </ul>
<ul>
<li class="active">changeset</li>
av6
hgweb: don't dereference symbolic revision in paper & coal style (issue2296)...
r25606 <li><a href="{url|urlescape}raw-rev/{symrev}{sessionvars%urlparameter}">raw</a></li>
<li><a href="{url|urlescape}file/{symrev}{sessionvars%urlparameter}">browse</a></li>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 </ul>
<ul>
{archives%archiveentry}
</ul>
Augie Fackler
web: add a help view for getting hg help output
r12666 <ul>
Thomas Arendsen Hein
hgweb: urlescape all urls, HTML escape repo/tag/branch/... names...
r18526 <li><a href="{url|urlescape}help{sessionvars%urlparameter}">help</a></li>
Augie Fackler
web: add a help view for getting hg help output
r12666 </ul>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 </div>
<div class="main">
Angel Ezquerra <angel.ezquerra at gmail.com>
hgweb: add a "URL breadcrumb" to the index and repository pages...
r18258 <h2 class="breadcrumb"><a href="/">Mercurial</a> {pathdef%breadcrumb}</h2>
av6
hgweb: link to revision by node hash in paper & coal...
r25617 <h3>
changeset {rev}:<a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a>
av6
hgweb: move changeset "tags" to a template in map file (paper and coal)...
r35055 {alltags}
av6
hgweb: link to revision by node hash in paper & coal...
r25617 </h3>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999
Gregory Szorc
hgweb: consolidate search form for paper...
r32758 {searchform}
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999
Angel Ezquerra
hgweb: apply the websub filter to revision descriptions...
r18628 <div class="description">{desc|strip|escape|websub|nonempty}</div>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999
<table id="changesetEntry">
<tr>
<th class="author">author</th>
<td class="author">{author|obfuscate}</td>
</tr>
<tr>
<th class="date">date</th>
Anton Shestakov
hgweb: clearly outline <tr> block in paper/changeset.tmpl...
r24130 <td class="date age">{date|rfc822date}</td>
</tr>
av6
hgweb: display fate of obsolete changesets...
r35501 {if(obsolete, '<tr>
<th>obsolete</th>
av6
hgweb: show each obsfateentry on its own line...
r36340 <td>{join(succsandmarkers%obsfateentry, '<br>\n')}</td>
av6
hgweb: display fate of obsolete changesets...
r35501 </tr>')}
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 <tr>
<th class="author">parents</th>
Anton Shestakov
hgweb: allow viewing diffs against p1 or p2 for merge commits (issue3904)...
r23740 <td class="author">{ifeq(count(parent), '2', parent%changesetparentdiff, parent%changesetparent)}</td>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 </tr>
<tr>
<th class="author">children</th>
<td class="author">{child%changesetchild}</td>
</tr>
<tr>
<th class="files">files</th>
<td class="files">{files}</td>
</tr>
Steven Brown
paper, coal: display diffstat on the changeset page...
r14571 <tr>
<th class="diffstat">diffstat</th>
<td class="diffstat">
{diffsummary}
Anton Shestakov
hgweb: fix diffstat links in paper/changeset.tmpl...
r23831 <a id="diffstatexpand" href="javascript:toggleDiffstat()">[<tt>+</tt>]</a>
Steven Brown
paper, coal: display diffstat on the changeset page...
r14571 <div id="diffstatdetails" style="display:none;">
Anton Shestakov
hgweb: fix diffstat links in paper/changeset.tmpl...
r23831 <a href="javascript:toggleDiffstat()">[<tt>-</tt>]</a>
Anton Shestakov
hgweb: use css margin instead of empty <p> before diffstat table...
r24042 <table class="diffstat-table stripes2">{diffstat}</table>
Steven Brown
paper, coal: display diffstat on the changeset page...
r14571 </div>
</td>
</tr>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 </table>
<div class="overflow">
Alexander Plavin
hgweb: add line wrapping switch to file diff and changeset views
r19433 <div class="sourcefirst linewraptoggle">line wrap: <a class="linewraplink" href="javascript:toggleLinewrap()">on</a></div>
Alexander Plavin
hgweb: file diff and changesets views behave like file source view...
r19432 <div class="sourcefirst"> line diff</div>
<div class="stripes2 diffblocks">
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999 {diff}
</div>
Alexander Plavin
hgweb: file diff and changesets views behave like file source view...
r19432 </div>
Dan Villiom Podlaski Christiansen
setup: install translation files as package data...
r9999
</div>
</div>
{footer}