Mercurial > hg
changeset 35657:8580e5898cb7
lfs: convert '{lfs_files}' keyword to a hybrid list
This will allow more attributes about the file to be queried.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Sun, 14 Jan 2018 15:39:10 -0500 |
parents | c9eb92fb87b7 |
children | a1222a8cc93b |
files | hgext/lfs/__init__.py tests/test-lfs.t |
diffstat | 2 files changed, 18 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/hgext/lfs/__init__.py Sun Dec 10 21:42:33 2017 +0100 +++ b/hgext/lfs/__init__.py Sun Jan 14 15:39:10 2018 -0500 @@ -61,9 +61,11 @@ localrepo, minifileset, node, + pycompat, registrar, revlog, scmutil, + templatekw, upgrade, vfs as vfsmod, wireproto, @@ -221,8 +223,18 @@ @templatekeyword('lfs_files') def lfsfiles(repo, ctx, **args): """List of strings. LFS files added or modified by the changeset.""" + args = pycompat.byteskwargs(args) + pointers = wrapper.pointersfromctx(ctx) # {path: pointer} - return sorted(pointers.keys()) + files = sorted(pointers.keys()) + + makemap = lambda v: { + 'file': v, + } + + # TODO: make the separator ', '? + f = templatekw._showlist('lfs_file', files, args) + return templatekw._hybrid(f, files, makemap, pycompat.identity) @command('debuglfsupload', [('r', 'rev', [], _('upload large files introduced by REV'))])
--- a/tests/test-lfs.t Sun Dec 10 21:42:33 2017 +0100 +++ b/tests/test-lfs.t Sun Jan 14 15:39:10 2018 -0500 @@ -859,6 +859,11 @@ oid sha256:5bb8341bee63b3649f222b2215bde37322bea075a30575aa685d8f8d21c77024 size 29 x-is-binary 0 + $ hg --cwd convert_lfs log -r 'all()' -T '{rev}: {lfs_files % "{file}\n"}' + 0: a1 + 1: a2 + 2: a2 + $ grep 'lfs' convert_lfs/.hg/requires lfs