debugcommands: introduce new debugrequirements command
authorPulkit Goyal <7895pulkit@gmail.com>
Tue, 14 Apr 2020 17:06:11 +0530
changeset 45107 4a28f5e8408e
parent 45106 a03c177a4679
child 45108 a659d5a4d2d5
debugcommands: introduce new debugrequirements command This for now just prints out the list of current requirements. In future this will be helpful in reading requirements from couple of sources, and checking which requirement comes from where. Differential Revision: https://phab.mercurial-scm.org/D8632
mercurial/debugcommands.py
tests/test-completion.t
tests/test-help.t
tests/test-requires.t
--- a/mercurial/debugcommands.py	Tue Apr 14 16:43:54 2020 +0530
+++ b/mercurial/debugcommands.py	Tue Apr 14 17:06:11 2020 +0530
@@ -2651,6 +2651,13 @@
             ui.write(_(b"%s not renamed\n") % rel)
 
 
+@command(b'debugrequires|debugrequirements', [], b'')
+def debugrequirements(ui, repo):
+    """ print the current repo requirements """
+    for r in sorted(repo.requirements):
+        ui.write(b"%s\n" % r)
+
+
 @command(
     b'debugrevlog',
     cmdutil.debugrevlogopts + [(b'd', b'dump', False, _(b'dump index data'))],
--- a/tests/test-completion.t	Tue Apr 14 16:43:54 2020 +0530
+++ b/tests/test-completion.t	Tue Apr 14 17:06:11 2020 +0530
@@ -121,6 +121,7 @@
   debugrebuilddirstate
   debugrebuildfncache
   debugrename
+  debugrequires
   debugrevlog
   debugrevlogindex
   debugrevspec
@@ -306,6 +307,7 @@
   debugrebuilddirstate: rev, minimal
   debugrebuildfncache: 
   debugrename: rev
+  debugrequires: 
   debugrevlog: changelog, manifest, dir, dump
   debugrevlogindex: changelog, manifest, dir, format
   debugrevspec: optimize, show-revs, show-set, show-stage, no-optimized, verify-optimized
--- a/tests/test-help.t	Tue Apr 14 16:43:54 2020 +0530
+++ b/tests/test-help.t	Tue Apr 14 17:06:11 2020 +0530
@@ -1051,6 +1051,8 @@
    debugrebuildfncache
                  rebuild the fncache file
    debugrename   dump rename information
+   debugrequires
+                 print the current repo requirements
    debugrevlog   show data and statistics about a revlog
    debugrevlogindex
                  dump the contents of a revlog index
--- a/tests/test-requires.t	Tue Apr 14 16:43:54 2020 +0530
+++ b/tests/test-requires.t	Tue Apr 14 17:06:11 2020 +0530
@@ -48,6 +48,14 @@
   > # enable extension locally
   > supportlocally = $TESTTMP/supported-locally/supportlocally.py
   > EOF
+  $ hg -R supported debugrequirements
+  dotencode
+  featuresetup-test
+  fncache
+  generaldelta
+  revlogv1
+  sparserevlog
+  store
   $ hg -R supported status
 
   $ hg init push-dst