diff -r d1a7d9c279bb -r d86b54d9bb0c mercurial/hgweb/webcommands.py --- a/mercurial/hgweb/webcommands.py Fri May 20 09:47:35 2016 +0900 +++ b/mercurial/hgweb/webcommands.py Sat Jul 16 14:49:07 2016 +0800 @@ -880,9 +880,14 @@ lines = fctx.annotate(follow=True, linenumber=True, diffopts=diffopts) previousrev = None + blockparitygen = paritygen(1) for lineno, ((f, targetline), l) in enumerate(lines): rev = f.rev() - blockhead = rev != previousrev or None + if rev != previousrev: + blockhead = True + blockparity = next(blockparitygen) + else: + blockhead = None previousrev = rev yield {"parity": next(parity), "node": f.hex(), @@ -893,6 +898,7 @@ "extra": f.extra(), "file": f.path(), "blockhead": blockhead, + "blockparity": blockparity, "targetline": targetline, "line": l, "lineno": lineno + 1,