Mercurial > hg
changeset 30081:dd0ff715a82c
hgweb: make fctx.annotate a separated function so it could be wrapped
This patch moves "fctx.annotate" used by the "annotate" webcommand, along
with the diffopts to a separated function which takes a ui and a fctx.
So it could be replaced by other implementations which don't want to replace
the core "fctx.annotate" directly.
author | Jun Wu <quark@fb.com> |
---|---|
date | Sat, 08 Oct 2016 16:10:34 +0100 |
parents | 33e8a5a00007 |
children | ebc03e64548a |
files | mercurial/hgweb/webcommands.py mercurial/hgweb/webutil.py |
diffstat | 2 files changed, 7 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/hgweb/webcommands.py Tue Oct 04 20:49:59 2016 +0800 +++ b/mercurial/hgweb/webcommands.py Sat Oct 08 16:10:34 2016 +0100 @@ -31,7 +31,6 @@ encoding, error, graphmod, - patch, revset, scmutil, templatefilters, @@ -861,8 +860,6 @@ fctx = webutil.filectx(web.repo, req) f = fctx.path() parity = paritygen(web.stripecount) - diffopts = patch.difffeatureopts(web.repo.ui, untrusted=True, - section='annotate', whitespace=True) def parents(f): for p in f.parents(): @@ -877,8 +874,8 @@ or 'application/octet-stream') lines = [((fctx.filectx(fctx.filerev()), 1), '(binary:%s)' % mt)] else: - lines = fctx.annotate(follow=True, linenumber=True, - diffopts=diffopts) + lines = webutil.annotate(fctx, web.repo.ui) + previousrev = None blockparitygen = paritygen(1) for lineno, ((f, targetline), l) in enumerate(lines):
--- a/mercurial/hgweb/webutil.py Tue Oct 04 20:49:59 2016 +0800 +++ b/mercurial/hgweb/webutil.py Sat Oct 08 16:10:34 2016 +0100 @@ -164,6 +164,11 @@ def __len__(self): return len(self.siblings) +def annotate(fctx, ui): + diffopts = patch.difffeatureopts(ui, untrusted=True, + section='annotate', whitespace=True) + return fctx.annotate(follow=True, linenumber=True, diffopts=diffopts) + def parents(ctx, hide=None): if isinstance(ctx, context.basefilectx): introrev = ctx.introrev()