fileset: don't suggest private or undocumented queries
authorMatt Harbison <matt_harbison@yahoo.com>
Sat, 20 Jun 2015 11:07:36 -0400
changeset 25633 0f44d35731d6
parent 25632 015c0d1087a3
child 25634 1ddefcfcd3e6
fileset: don't suggest private or undocumented queries Unlike revsets, it looks like all of the filesets are documented, so there's really nothing to test. This is aimed more at parity with revsets and future-proofing.
mercurial/fileset.py
--- a/mercurial/fileset.py	Sat Jun 20 10:59:56 2015 -0400
+++ b/mercurial/fileset.py	Sat Jun 20 11:07:36 2015 -0400
@@ -189,7 +189,11 @@
 def func(mctx, a, b):
     if a[0] == 'symbol' and a[1] in symbols:
         return symbols[a[1]](mctx, b)
-    raise error.UnknownIdentifier(a[1], symbols.keys())
+
+    keep = lambda fn: getattr(fn, '__doc__', None) is not None
+
+    syms = [s for (s, fn) in symbols.items() if keep(fn)]
+    raise error.UnknownIdentifier(a[1], syms)
 
 def getlist(x):
     if not x: