Patchwork D8671: version: sort extensions by name in verbose mode

login
register
mail settings
Submitter phabricator
Date June 28, 2020, 7:29 p.m.
Message ID <differential-rev-PHID-DREV-bxrtfjyplojeq6snk34c-req@mercurial-scm.org>
Download mbox | patch
Permalink /patch/46591/
State Superseded
Headers show

Comments

phabricator - June 28, 2020, 7:29 p.m.
mharbison72 created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.

REVISION SUMMARY
  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.

REPOSITORY
  rHG Mercurial

BRANCH
  default

REVISION DETAIL
  https://phab.mercurial-scm.org/D8671

AFFECTED FILES
  mercurial/commands.py
  tests/test-extension.t

CHANGE DETAILS




To: mharbison72, #hg-reviewers
Cc: mercurial-patches, mercurial-devel

Patch

diff --git a/tests/test-extension.t b/tests/test-extension.t
--- a/tests/test-extension.t
+++ b/tests/test-extension.t
@@ -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
 
diff --git a/mercurial/commands.py b/mercurial/commands.py
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -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))