Mercurial > public > mercurial-scm > hg-stable
diff mercurial/fileset.py @ 24803:e89f909edffa stable 3.4-rc
merge default into stable for 3.4 freeze
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Thu, 16 Apr 2015 20:57:51 -0500 |
parents | caa6b6c65dc3 |
children | ac381dd7a21f |
line wrap: on
line diff
--- a/mercurial/fileset.py Thu Apr 16 22:33:53 2015 +0900 +++ b/mercurial/fileset.py Thu Apr 16 20:57:51 2015 -0500 @@ -186,7 +186,7 @@ def func(mctx, a, b): if a[0] == 'symbol' and a[1] in symbols: return symbols[a[1]](mctx, b) - raise error.ParseError(_("not a function: %s") % a[1]) + raise error.UnknownIdentifier(a[1], symbols.keys()) def getlist(x): if not x: @@ -233,7 +233,7 @@ getargs(x, 0, 0, _("resolved takes no arguments")) if mctx.ctx.rev() is not None: return [] - ms = merge.mergestate(mctx.ctx._repo) + ms = merge.mergestate(mctx.ctx.repo()) return [f for f in mctx.subset if f in ms and ms[f] == 'r'] def unresolved(mctx, x): @@ -244,7 +244,7 @@ getargs(x, 0, 0, _("unresolved takes no arguments")) if mctx.ctx.rev() is not None: return [] - ms = merge.mergestate(mctx.ctx._repo) + ms = merge.mergestate(mctx.ctx.repo()) return [f for f in mctx.subset if f in ms and ms[f] == 'u'] def hgignore(mctx, x): @@ -253,9 +253,19 @@ """ # i18n: "hgignore" is a keyword getargs(x, 0, 0, _("hgignore takes no arguments")) - ignore = mctx.ctx._repo.dirstate._ignore + ignore = mctx.ctx.repo().dirstate._ignore return [f for f in mctx.subset if ignore(f)] +def portable(mctx, x): + """``portable()`` + File that has a portable name. (This doesn't include filenames with case + collisions.) + """ + # i18n: "portable" is a keyword + getargs(x, 0, 0, _("portable takes no arguments")) + checkwinfilename = util.checkwinfilename + return [f for f in mctx.subset if checkwinfilename(f) is None] + def grep(mctx, x): """``grep(regex)`` File contains the given regular expression. @@ -398,7 +408,7 @@ def m(s): return (s == pat) else: - m = matchmod.match(ctx._repo.root, '', [pat], ctx=ctx) + m = matchmod.match(ctx.repo().root, '', [pat], ctx=ctx) return [sub for sub in sstate if m(sub)] else: return [sub for sub in sstate] @@ -416,6 +426,7 @@ 'ignored': ignored, 'hgignore': hgignore, 'modified': modified, + 'portable': portable, 'removed': removed, 'resolved': resolved, 'size': size, @@ -493,7 +504,7 @@ unknown = _intree(['unknown'], tree) ignored = _intree(['ignored'], tree) - r = ctx._repo + r = ctx.repo() status = r.status(ctx.p1(), ctx, unknown=unknown, ignored=ignored, clean=True) subset = []