[PATCH] commands: update debugindex to display more fields
in3xes at gmail.com
in3xes at gmail.com
Tue Oct 26 23:22:18 UTC 2010
# HG changeset patch
# User Pradeepkumar Gayam <in3xes at gmail.com>
# Date 1288135189 -19800
# Branch stable
# Node ID 239613796263a1ec6e3d02af8b626a3d33a69b72
# Parent b00eda50ad2b8d4ce385486e82dd72e421c7d793
commands: update debugindex to display more fields
Now debugindex command displays flags and size(revlog.rawsize)
Currently it looks like:
rev offset length size base linkrev p1 p2 nodeid
0 0 2307 7801 0 0 -1 -1 b6444347c629
1 2307 77 7841 0 5 0 -1 06763db6de79
diff -r b00eda50ad2b -r 239613796263 mercurial/commands.py
--- a/mercurial/commands.py Wed Oct 20 17:38:21 2010 -0500
+++ b/mercurial/commands.py Wed Oct 27 04:49:49 2010 +0530
@@ -1260,26 +1260,36 @@
m = util.matchdate(range)
ui.write("match: %s\n" % m(d[0]))
-def debugindex(ui, repo, file_):
+def debugindex(ui, repo, file_, **opts):
"""dump the contents of an index file"""
r = None
if repo:
filelog = repo.file(file_)
if len(filelog):
r = filelog
+ flags = opts.get('flags')
if not r:
r = revlog.revlog(util.opener(os.getcwd(), audit=False), file_)
- ui.write(" rev offset length base linkrev"
- " nodeid p1 p2\n")
+ if flags:
+ format = "% 6d % 04x % 9d % 7d % 6d % 6d % 7d % 6d % 6d %s\n"
+ ui.write(" rev flags offset length size base linkrev"
+ " p1 p2 nodeid\n")
+ else:
+ format = "% 6d % 9d % 7d % 6d % 6d % 6d % 7d %6d %s\n"
+ ui.write(" rev offset length size base linkrev"
+ " p1 p2 nodeid\n")
for i in r:
+ values = []
node = r.node(i)
try:
- pp = r.parents(node)
+ pp = r.parentrevs(i)
except:
- pp = [nullid, nullid]
- ui.write("% 6d % 9d % 7d % 6d % 7d %s %s %s\n" % (
- i, r.start(i), r.length(i), r.base(i), r.linkrev(i),
- short(node), short(pp[0]), short(pp[1])))
+ pp = [-1, -1]
+ values = [i, r.start(i), r.length(i), r.rawsize(i), r.base(i), r.linkrev(i),
+ pp[0], pp[1], short(node)]
+ if flags:
+ values.insert(1, r.flags(i))
+ ui.write(format % tuple(values))
def debugindexdot(ui, repo, file_):
"""dump an index DAG as a graphviz dot file"""
@@ -4131,7 +4141,8 @@
_('[-e] DATE [RANGE]')),
"debugdata": (debugdata, [], _('FILE REV')),
"debugfsinfo": (debugfsinfo, [], _('[PATH]')),
- "debugindex": (debugindex, [], _('FILE')),
+ "debugindex": (debugindex, [('f', 'flags', None, _('display revision flags'))],
+ _('FILE')),
"debugindexdot": (debugindexdot, [], _('FILE')),
"debuginstall": (debuginstall, [], ''),
"debugpushkey": (debugpushkey, [], _('REPO NAMESPACE [KEY OLD NEW]')),
More information about the Mercurial-devel
mailing list