[PATCH 1 of 5] cmdutil: make node parameter of makefileobj() mandatory (API)
Yuya Nishihara
yuya at tcha.org
Wed Feb 14 14:25:05 UTC 2018
# HG changeset patch
# User Yuya Nishihara <yuya at tcha.org>
# Date 1427984522 -32400
# Thu Apr 02 23:22:02 2015 +0900
# Node ID 87127b53c63a948b24461862e6d7a02862ecdaa2
# Parent 39b3aab6231e8fa070eadd8e165b9960f8c46076
cmdutil: make node parameter of makefileobj() mandatory (API)
(repo, node) pair will be replaced with ctx, so makefilename() can be easily
ported to templater.
diff --git a/mercurial/cmdutil.py b/mercurial/cmdutil.py
--- a/mercurial/cmdutil.py
+++ b/mercurial/cmdutil.py
@@ -893,23 +893,17 @@ def getcommiteditor(edit=False, finishde
def makefilename(repo, pat, node, desc=None,
total=None, seqno=None, revwidth=None, pathname=None):
- node_expander = {
+ expander = {
'H': lambda: hex(node),
'R': lambda: '%d' % repo.changelog.rev(node),
'h': lambda: short(node),
- 'm': lambda: re.sub('[^\w]', '_', desc or '')
- }
- expander = {
+ 'm': lambda: re.sub('[^\w]', '_', desc or ''),
+ 'r': lambda: ('%d' % repo.changelog.rev(node)).zfill(revwidth or 0),
'%': lambda: '%',
'b': lambda: os.path.basename(repo.root),
}
try:
- if node:
- expander.update(node_expander)
- if node:
- expander['r'] = (lambda:
- ('%d' % repo.changelog.rev(node)).zfill(revwidth or 0))
if total is not None:
expander['N'] = lambda: '%d' % total
if seqno is not None:
@@ -960,7 +954,7 @@ class _unclosablefile(object):
def __exit__(self, exc_type, exc_value, exc_tb):
pass
-def makefileobj(repo, pat, node=None, desc=None, total=None,
+def makefileobj(repo, pat, node, desc=None, total=None,
seqno=None, revwidth=None, mode='wb', modemap=None,
pathname=None):
diff --git a/mercurial/commands.py b/mercurial/commands.py
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -486,7 +486,7 @@ def archive(ui, repo, dest, **opts):
if dest == '-':
if kind == 'files':
raise error.Abort(_('cannot archive plain files to stdout'))
- dest = cmdutil.makefileobj(repo, dest)
+ dest = cmdutil.makefileobj(repo, dest, node)
if not prefix:
prefix = os.path.basename(repo.root) + '-%h'
More information about the Mercurial-devel
mailing list