@@ -353,7 +353,10 @@ def formatlinerange(fromline, toline):
return '%d:%d' % (fromline + 1, toline)
def succsandmarkers(repo, ctx):
- return templatekw.showsuccsandmarkers(repo, ctx)
+ for item in templatekw.showsuccsandmarkers(repo, ctx):
+ item['successors'] = _siblings(repo[successor]
+ for successor in item['successors'])
+ yield item
def commonentry(repo, ctx):
node = ctx.node()
@@ -271,7 +271,8 @@ branchtag = '<span class="branchtag" tit
inbranchtag = '<span class="inbranchtag" title="{name|escape}">{name|escape}</span> '
bookmarktag = '<span class="bookmarktag" title="{name|escape}">{name|escape}</span> '
alltags = '<span class="logtags">{phasetag}{obsoletetag}{instabilities%instabilitytag}{inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}{bookmarks%bookmarktag}</span>'
-obsfatesuccessors = '{if(successors, ' as ')}{join(successors, ', ')}'
+successorlink = '<a class="list" href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a> '
+obsfatesuccessors = '{if(successors, ' as ')}{successors%successorlink}'
obsfateverb = '{obsfateverb(successors, markers)}'
obsfateoperations = '{if(obsfateoperations(markers), ' using {join(obsfateoperations(markers), ', ')}')}'
obsfateentry = '{obsfateverb}{obsfateoperations}{obsfatesuccessors}'
@@ -229,7 +229,8 @@ branchtag = '<span class="branchtag" tit
inbranchtag = '<span class="inbranchtag" title="{name|escape}">{name|escape}</span> '
bookmarktag = '<span class="bookmarktag" title="{name|escape}">{name|escape}</span> '
alltags = '<span class="logtags">{phasetag}{obsoletetag}{instabilities%instabilitytag}{inbranch%inbranchtag}{branches%branchtag}{tags%tagtag}{bookmarks%bookmarktag}</span>'
-obsfatesuccessors = '{if(successors, ' as ')}{join(successors, ', ')}'
+successorlink = '<a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a> '
+obsfatesuccessors = '{if(successors, ' as ')}{successors%successorlink}'
obsfateverb = '{obsfateverb(successors, markers)}'
obsfateoperations = '{if(obsfateoperations(markers), ' using {join(obsfateoperations(markers), ', ')}')}'
obsfateentry = '{obsfateverb}{obsfateoperations}{obsfatesuccessors}'
@@ -209,7 +209,8 @@ changelogbranchhead = '<span class="bran
changelogbranchname = '<span class="branchname">{name|escape}</span> '
alltags = '{phasetag}{obsoletetag}{instabilities%instabilitytag}{inbranch%changelogbranchname}{branches%changelogbranchhead}{tags%changelogtag}{bookmarks%changelogtag}'
-obsfatesuccessors = '{if(successors, ' as ')}{join(successors, ', ')}'
+successorlink = '<a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a> '
+obsfatesuccessors = '{if(successors, ' as ')}{successors%successorlink}'
obsfateverb = '{obsfateverb(successors, markers)}'
obsfateoperations = '{if(obsfateoperations(markers), ' using {join(obsfateoperations(markers), ', ')}')}'
obsfateentry = '{obsfateverb}{obsfateoperations}{obsfatesuccessors}'
@@ -166,7 +166,8 @@ branchentry = '
diffblock = '<pre class="parity{parity}">{lines}</pre>'
changelogtag = '<tr><th class="tag">tag:</th><td class="tag">{tag|escape}</td></tr>'
changesettag = '<tr><th class="tag">tag:</th><td class="tag">{tag|escape}</td></tr>'
-obsfatesuccessors = '{if(successors, ' as ')}{join(successors, ', ')}'
+successorlink = '<a href="{url|urlescape}rev/{node|short}{sessionvars%urlparameter}">{node|short}</a> '
+obsfatesuccessors = '{if(successors, ' as ')}{successors%successorlink}'
obsfateverb = '{obsfateverb(successors, markers)}'
obsfateoperations = '{if(obsfateoperations(markers), ' using {join(obsfateoperations(markers), ', ')}')}'
obsfateentry = '{obsfateverb}{obsfateoperations}{obsfatesuccessors}'
@@ -1036,15 +1036,15 @@ check obsolete changeset
check an obsolete changeset that has been rewritten
$ get-with-headers.py localhost:$HGPORT 'rev/cda648ca50f5?style=paper' | grep rewritten
- <td>rewritten as 6:3de5eca88c00</td>
+ <td>rewritten as <a href="/rev/3de5eca88c00?style=paper">3de5eca88c00</a> </td>
$ get-with-headers.py localhost:$HGPORT 'rev/cda648ca50f5?style=coal' | grep rewritten
- <td>rewritten as 6:3de5eca88c00</td>
+ <td>rewritten as <a href="/rev/3de5eca88c00?style=coal">3de5eca88c00</a> </td>
$ get-with-headers.py localhost:$HGPORT 'rev/cda648ca50f5?style=gitweb' | grep rewritten
- <tr><td>obsolete</td><td>rewritten as 6:3de5eca88c00</td></tr>
+ <tr><td>obsolete</td><td>rewritten as <a class="list" href="/rev/3de5eca88c00?style=gitweb">3de5eca88c00</a> </td></tr>
$ get-with-headers.py localhost:$HGPORT 'rev/cda648ca50f5?style=monoblue' | grep rewritten
- <dt>obsolete</dt><dd>rewritten as 6:3de5eca88c00</dd>
+ <dt>obsolete</dt><dd>rewritten as <a href="/rev/3de5eca88c00?style=monoblue">3de5eca88c00</a> </dd>
$ get-with-headers.py localhost:$HGPORT 'rev/cda648ca50f5?style=spartan' | grep rewritten
- <td class="obsolete">rewritten as 6:3de5eca88c00</td>
+ <td class="obsolete">rewritten as <a href="/rev/3de5eca88c00?style=spartan">3de5eca88c00</a> </td>
check changeset with instabilities