debugnamecomplete: use new name api
authorSean Farley <sean.michael.farley@gmail.com>
Mon, 15 Dec 2014 14:11:19 -0800
changeset 23763 7ad155e13f0f
parent 23762 0390cc327dd5
child 23764 d486e52352e8
debugnamecomplete: use new name api Instead of hardcoding a list of places to check, we use the new repo.names api to get a list of potential names to complete.
mercurial/commands.py
--- a/mercurial/commands.py	Fri Oct 17 13:41:29 2014 -0700
+++ b/mercurial/commands.py	Mon Dec 15 14:11:19 2014 -0800
@@ -2352,8 +2352,11 @@
     '''complete "names" - tags, open branch names, bookmark names'''
 
     names = set()
-    names.update(t[0] for t in repo.tagslist())
-    names.update(repo._bookmarks.keys())
+    # since we previously only listed open branches, we will handle that
+    # specially (after this for loop)
+    for name, ns in repo.names.iteritems():
+        if name != 'branches':
+            names.update(ns.listnames(repo))
     names.update(tag for (tag, heads, tip, closed)
                  in repo.branchmap().iterbranches() if not closed)
     completions = set()