mercurial/templates/spartan/graph.tmpl
author Joerg Sonnenberger <joerg@bec.de>
Tue, 11 Jun 2024 18:47:50 +0200
changeset 51644 f28c52a9f7b4
parent 35605 45a816361926
permissions -rw-r--r--
exchange: improve computation of relevant markers for large repos Find the candidates for nodes with relevant markers by going over all markers instead of iterating over all nodes. Most nodes will not have markers anyway. Further optimize the code by allowing revsets as well, which reduces the materialization cost.

{header}
<title>{repo|escape}: graph</title>
<link rel="alternate" type="application/atom+xml"
   href="{url|urlescape}atom-tags" title="Atom feed for {repo|escape}: tags">
<link rel="alternate" type="application/rss+xml"
   href="{url|urlescape}rss-tags" title="RSS feed for {repo|escape}: tags">
</head>
<body>

<div class="buttons">
<a href="{url|urlescape}log/{symrev}{sessionvars%urlparameter}">changelog</a>
<a href="{url|urlescape}shortlog/{symrev}{sessionvars%urlparameter}">shortlog</a>
<a href="{url|urlescape}tags{sessionvars%urlparameter}">tags</a>
<a href="{url|urlescape}branches{sessionvars%urlparameter}">branches</a>
<a href="{url|urlescape}file/{symrev}/{sessionvars%urlparameter}">files</a>
<a href="{url|urlescape}help{sessionvars%urlparameter}">help</a>
</div>

<h2><a href="/">Mercurial</a> {pathdef%breadcrumb} / graph</h2>

<form action="{url|urlescape}log">
{sessionvars%hiddenformentry}
<p>
<label for="search1">search:</label>
<input name="rev" id="search1" type="text" size="30">
navigate: <small class="navigate">{changenav%navgraph}</small>
</p>
</form>

<noscript>The revision graph only works with JavaScript-enabled browsers.</noscript>

<div id="wrapper">
<canvas id="graph"></canvas>
<ul id="graphnodes">{nodes%graphentry}</ul>
</div>

<script type="text/javascript"{if(nonce, ' nonce="{nonce}"')}>
var data = {jsdata|json};
var graph = new Graph();
graph.scale({bg_height});
graph.render(data);
</script>

<form action="{url|urlescape}log">
{sessionvars%hiddenformentry}
<p>
<label for="search1">search:</label>
<input name="rev" id="search1" type="text" size="30">
navigate: <small class="navigate">{changenav%navgraph}</small>
</p>
</form>

{footer}