diff: pass contexts to status
Allow status() to take contexts as well as nodes. This lets us avoid
unpacking manifests multiple times and intelligently unpack manifests
in revision order. Also, we can avoid unpacking manifests at all when
there are no changes in the working directory.
#header#
<title>#repo|escape#: changelog</title>
<link rel="alternate" type="application/atom+xml"
href="#url#atom-log" title="Atom feed for #repo|escape#">
<link rel="alternate" type="application/rss+xml"
href="#url#rss-log" title="RSS feed for #repo|escape#">
</head>
<body>
<div class="buttons">
<a href="#url#shortlog/#rev#{sessionvars%urlparameter}">shortlog</a>
<a href="#url#graph{sessionvars%urlparameter}">graph</a>
<a href="#url#tags{sessionvars%urlparameter}">tags</a>
<a href="#url#file/#node|short#{sessionvars%urlparameter}">files</a>
#archives%archiveentry#
<a type="application/rss+xml" href="#url#rss-log">rss</a>
<a type="application/atom+xml" href="#url#atom-log" title="Atom feed for #repo|escape#">atom</a>
</div>
<h2>changelog for #repo|escape#</h2>
<form action="#url#log">
{sessionvars%hiddenformentry}
<p>
<label for="search1">search:</label>
<input name="rev" id="search1" type="text" size="30">
navigate: <small class="navigate">#changenav%naventry#</small>
</p>
</form>
#entries%changelogentry#
<form action="#url#log">
{sessionvars%hiddenformentry}
<p>
<label for="search2">search:</label>
<input name="rev" id="search2" type="text" size="30">
navigate: <small class="navigate">#changenav%naventry#</small>
</p>
</form>
#footer#