version: sort extensions by name in verbose mode
authorMatt Harbison <matt_harbison@yahoo.com>
Sat, 27 Jun 2020 21:45:20 -0400
changeset 45008 e1ea913da2ed
parent 45007 47a07bbf400a
child 45009 7d494425167c
version: sort extensions by name in verbose mode External extensions can be assigned any name, but presumably most enabled extensions will be internal ones and having them sorted makes it easier to find specific ones if the list is long. The lists in `hg help extensions` are already sorted. Differential Revision: https://phab.mercurial-scm.org/D8671
mercurial/commands.py
tests/test-extension.t
--- a/mercurial/commands.py	Sat Jun 27 20:19:41 2020 +0200
+++ b/mercurial/commands.py	Sat Jun 27 21:45:20 2020 -0400
@@ -7830,7 +7830,7 @@
     names = []
     vers = []
     isinternals = []
-    for name, module in extensions.extensions():
+    for name, module in sorted(extensions.extensions()):
         names.append(name)
         vers.append(extensions.moduleversion(module) or None)
         isinternals.append(extensions.ismoduleinternal(module))
--- a/tests/test-extension.t	Sat Jun 27 20:19:41 2020 +0200
+++ b/tests/test-extension.t	Sat Jun 27 21:45:20 2020 -0400
@@ -1559,8 +1559,8 @@
   
   Enabled extensions:
   
+    strip  internal  
     throw  external  1.twentythree
-    strip  internal  
 
   $ hg version -q --config extensions.throw=throw.py
   Mercurial Distributed SCM (version *) (glob)
@@ -1600,8 +1600,8 @@
 
   $ hg version --config extensions.throw=throw.py --config extensions.strip= \
   > -T'{extensions % "{name}  {pad(ver, 16)}  ({if(bundled, "internal", "external")})\n"}'
+  strip                    (internal)
   throw  1.twentythree     (external)
-  strip                    (internal)
 
 Refuse to load extensions with minimum version requirements