Mercurial > public > mercurial-scm > hg
comparison mercurial/cmdutil.py @ 36203:01280638bdb1
cmdutil: make node parameter of makefileobj() mandatory (API)
(repo, node) pair will be replaced with ctx, so makefilename() can be easily
ported to templater.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Thu, 02 Apr 2015 23:22:02 +0900 |
parents | 39b3aab6231e |
children | 33ed8b511185 |
comparison
equal
deleted
inserted
replaced
36202:707aba4d48b5 | 36203:01280638bdb1 |
---|---|
891 else: | 891 else: |
892 return commiteditor | 892 return commiteditor |
893 | 893 |
894 def makefilename(repo, pat, node, desc=None, | 894 def makefilename(repo, pat, node, desc=None, |
895 total=None, seqno=None, revwidth=None, pathname=None): | 895 total=None, seqno=None, revwidth=None, pathname=None): |
896 node_expander = { | 896 expander = { |
897 'H': lambda: hex(node), | 897 'H': lambda: hex(node), |
898 'R': lambda: '%d' % repo.changelog.rev(node), | 898 'R': lambda: '%d' % repo.changelog.rev(node), |
899 'h': lambda: short(node), | 899 'h': lambda: short(node), |
900 'm': lambda: re.sub('[^\w]', '_', desc or '') | 900 'm': lambda: re.sub('[^\w]', '_', desc or ''), |
901 } | 901 'r': lambda: ('%d' % repo.changelog.rev(node)).zfill(revwidth or 0), |
902 expander = { | |
903 '%': lambda: '%', | 902 '%': lambda: '%', |
904 'b': lambda: os.path.basename(repo.root), | 903 'b': lambda: os.path.basename(repo.root), |
905 } | 904 } |
906 | 905 |
907 try: | 906 try: |
908 if node: | |
909 expander.update(node_expander) | |
910 if node: | |
911 expander['r'] = (lambda: | |
912 ('%d' % repo.changelog.rev(node)).zfill(revwidth or 0)) | |
913 if total is not None: | 907 if total is not None: |
914 expander['N'] = lambda: '%d' % total | 908 expander['N'] = lambda: '%d' % total |
915 if seqno is not None: | 909 if seqno is not None: |
916 expander['n'] = lambda: '%d' % seqno | 910 expander['n'] = lambda: '%d' % seqno |
917 if total is not None and seqno is not None: | 911 if total is not None and seqno is not None: |
958 return self | 952 return self |
959 | 953 |
960 def __exit__(self, exc_type, exc_value, exc_tb): | 954 def __exit__(self, exc_type, exc_value, exc_tb): |
961 pass | 955 pass |
962 | 956 |
963 def makefileobj(repo, pat, node=None, desc=None, total=None, | 957 def makefileobj(repo, pat, node, desc=None, total=None, |
964 seqno=None, revwidth=None, mode='wb', modemap=None, | 958 seqno=None, revwidth=None, mode='wb', modemap=None, |
965 pathname=None): | 959 pathname=None): |
966 | 960 |
967 writable = mode not in ('r', 'rb') | 961 writable = mode not in ('r', 'rb') |
968 | 962 |