D6546: log: pass getcopies() function instead of getrenamed() to displayer (API)
martinvonz (Martin von Zweigbergk)
phabricator at mercurial-scm.org
Wed Jun 19 17:56:40 EDT 2019
Closed by commit rHGa68350a7fc55: log: pass getcopies() function instead of getrenamed() to displayer (API) (authored by martinvonz).
This revision was automatically updated to reflect the committed changes.
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D6546?vs=15596&id=15608
CHANGES SINCE LAST ACTION
https://phab.mercurial-scm.org/D6546/new/
REVISION DETAIL
https://phab.mercurial-scm.org/D6546
AFFECTED FILES
mercurial/commands.py
mercurial/logcmdutil.py
CHANGE DETAILS
diff --git a/mercurial/logcmdutil.py b/mercurial/logcmdutil.py
--- a/mercurial/logcmdutil.py
+++ b/mercurial/logcmdutil.py
@@ -862,7 +862,7 @@
return templ.renderdefault(props)
return formatnode
-def displaygraph(ui, repo, dag, displayer, edgefn, getrenamed=None, props=None):
+def displaygraph(ui, repo, dag, displayer, edgefn, getcopies=None, props=None):
props = props or {}
formatnode = _graphnodeformatter(ui, displayer)
state = graphmod.asciistate()
@@ -890,13 +890,7 @@
for rev, type, ctx, parents in dag:
char = formatnode(repo, ctx)
- copies = None
- if getrenamed:
- copies = []
- for fn in ctx.files():
- rename = getrenamed(fn, ctx.rev())
- if rename:
- copies.append((fn, rename))
+ copies = getcopies(ctx) if getcopies else None
edges = edgefn(type, char, state, rev, parents)
firstedge = next(edges)
width = firstedge[2]
@@ -915,16 +909,10 @@
revdag = graphmod.dagwalker(repo, revs)
displaygraph(ui, repo, revdag, displayer, graphmod.asciiedges, getrenamed)
-def displayrevs(ui, repo, revs, displayer, getrenamed):
+def displayrevs(ui, repo, revs, displayer, getcopies):
for rev in revs:
ctx = repo[rev]
- copies = None
- if getrenamed is not None:
- copies = []
- for fn in ctx.files():
- rename = getrenamed(fn, rev)
- if rename:
- copies.append((fn, rename))
+ copies = getcopies(ctx) if getcopies else None
displayer.show(ctx, copies=copies)
displayer.flush(ctx)
displayer.close()
diff --git a/mercurial/commands.py b/mercurial/commands.py
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -3887,12 +3887,12 @@
# then filter the result by logcmdutil._makerevset() and --limit
revs, differ = logcmdutil.getlinerangerevs(repo, revs, opts)
- getrenamed = None
+ getcopies = None
if opts.get('copies'):
endrev = None
if revs:
endrev = revs.max() + 1
- getrenamed = scmutil.getrenamedfn(repo, endrev=endrev)
+ getcopies = scmutil.getcopiesfn(repo, endrev=endrev)
ui.pager('log')
displayer = logcmdutil.changesetdisplayer(ui, repo, opts, differ,
@@ -3901,7 +3901,7 @@
displayfn = logcmdutil.displaygraphrevs
else:
displayfn = logcmdutil.displayrevs
- displayfn(ui, repo, revs, displayer, getrenamed)
+ displayfn(ui, repo, revs, displayer, getcopies)
@command('manifest',
[('r', 'rev', '', _('revision to display'), _('REV')),
To: martinvonz, #hg-reviewers, pulkit
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list