[PATCH 01 of 11] debuginstall: print compression engine support
Gregory Szorc
gregory.szorc at gmail.com
Sun Nov 20 22:23:38 UTC 2016
# HG changeset patch
# User Gregory Szorc <gregory.szorc at gmail.com>
# Date 1479581661 28800
# Sat Nov 19 10:54:21 2016 -0800
# Node ID 55af8a76a48c276924a0ff9fbf4d2db1c2b31711
# Parent 9375077f1ace71dfa2fc87a1d4eaeae8de267e20
debuginstall: print compression engine support
Since compression engines may be provided by extensions and since
not all registered compression engines may be available to use,
it seems useful to provide a mechanism to see the state of known
compression engines.
This commit teaches `hg debuginstall` to print info on known and
available compression engines.
diff --git a/mercurial/commands.py b/mercurial/commands.py
--- a/mercurial/commands.py
+++ b/mercurial/commands.py
@@ -2579,6 +2579,16 @@ def debuginstall(ui, **opts):
problems += 1
fm.condwrite(err, 'extensionserror', " %s\n", err)
+ compengines = util.compengines._engines.values()
+ fm.write('compengines', _('checking registered compression engines (%s)\n'),
+ fm.formatlist(sorted(e.name() for e in compengines),
+ name='compengine', fmt='%s', sep=', '))
+ fm.write('compenginesavail', _('checking available compression engines '
+ '(%s)\n'),
+ fm.formatlist(sorted(e.name() for e in compengines
+ if e.available()),
+ name='compengine', fmt='%s', sep=', '))
+
# templates
p = templater.templatepaths()
fm.write('templatedirs', 'checking templates (%s)...\n', ' '.join(p))
diff --git a/tests/test-install.t b/tests/test-install.t
--- a/tests/test-install.t
+++ b/tests/test-install.t
@@ -11,6 +11,8 @@ hg debuginstall
checking Mercurial custom build (*) (glob)
checking module policy (*) (glob)
checking installed modules (*mercurial)... (glob)
+ checking registered compression engines (*zlib*) (glob)
+ checking available compression engines (*zlib*) (glob)
checking templates (*mercurial?templates)... (glob)
checking default template (*mercurial?templates?map-cmdline.default) (glob)
checking commit editor... (* -c "import sys; sys.exit(0)") (glob)
@@ -21,6 +23,8 @@ hg debuginstall JSON
$ hg debuginstall -Tjson | sed 's|\\\\|\\|g'
[
{
+ "compengines": ["bz2", "bz2truncated", "none", "zlib"*], (glob)
+ "compenginesavail": ["bz2", "bz2truncated", "none", "zlib"*], (glob)
"defaulttemplate": "*mercurial?templates?map-cmdline.default", (glob)
"defaulttemplateerror": null,
"defaulttemplatenotfound": "default",
@@ -58,6 +62,8 @@ hg debuginstall with no username
checking Mercurial custom build (*) (glob)
checking module policy (*) (glob)
checking installed modules (*mercurial)... (glob)
+ checking registered compression engines (*zlib*) (glob)
+ checking available compression engines (*zlib*) (glob)
checking templates (*mercurial?templates)... (glob)
checking default template (*mercurial?templates?map-cmdline.default) (glob)
checking commit editor... (* -c "import sys; sys.exit(0)") (glob)
@@ -85,6 +91,8 @@ path variables are expanded (~ is the sa
checking Mercurial custom build (*) (glob)
checking module policy (*) (glob)
checking installed modules (*mercurial)... (glob)
+ checking registered compression engines (*zlib*) (glob)
+ checking available compression engines (*zlib*) (glob)
checking templates (*mercurial?templates)... (glob)
checking default template (*mercurial?templates?map-cmdline.default) (glob)
checking commit editor... (* -c "import sys; sys.exit(0)") (glob)
More information about the Mercurial-devel
mailing list