comparison mercurial/debugcommands.py @ 30947:3c766ca89377

debugcommands: move 'debugpvec' in the new module
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
date Thu, 02 Feb 2017 09:59:47 +0100
parents 7103122495e2
children cc2b537b1966
comparison
equal deleted inserted replaced
30946:7103122495e2 30947:3c766ca89377
41 localrepo, 41 localrepo,
42 lock as lockmod, 42 lock as lockmod,
43 merge as mergemod, 43 merge as mergemod,
44 obsolete, 44 obsolete,
45 policy, 45 policy,
46 pvec,
46 pycompat, 47 pycompat,
47 repair, 48 repair,
48 revlog, 49 revlog,
49 scmutil, 50 scmutil,
50 setdiscovery, 51 setdiscovery,
1433 else: 1434 else:
1434 for k, v in sorted(target.listkeys(namespace).iteritems()): 1435 for k, v in sorted(target.listkeys(namespace).iteritems()):
1435 ui.write("%s\t%s\n" % (k.encode('string-escape'), 1436 ui.write("%s\t%s\n" % (k.encode('string-escape'),
1436 v.encode('string-escape'))) 1437 v.encode('string-escape')))
1437 1438
1439 @command('debugpvec', [], _('A B'))
1440 def debugpvec(ui, repo, a, b=None):
1441 ca = scmutil.revsingle(repo, a)
1442 cb = scmutil.revsingle(repo, b)
1443 pa = pvec.ctxpvec(ca)
1444 pb = pvec.ctxpvec(cb)
1445 if pa == pb:
1446 rel = "="
1447 elif pa > pb:
1448 rel = ">"
1449 elif pa < pb:
1450 rel = "<"
1451 elif pa | pb:
1452 rel = "|"
1453 ui.write(_("a: %s\n") % pa)
1454 ui.write(_("b: %s\n") % pb)
1455 ui.write(_("depth(a): %d depth(b): %d\n") % (pa._depth, pb._depth))
1456 ui.write(_("delta: %d hdist: %d distance: %d relation: %s\n") %
1457 (abs(pa._depth - pb._depth), pvec._hamming(pa._vec, pb._vec),
1458 pa.distance(pb), rel))
1459
1438 @command('debugupgraderepo', [ 1460 @command('debugupgraderepo', [
1439 ('o', 'optimize', [], _('extra optimization to perform'), _('NAME')), 1461 ('o', 'optimize', [], _('extra optimization to perform'), _('NAME')),
1440 ('', 'run', False, _('performs an upgrade')), 1462 ('', 'run', False, _('performs an upgrade')),
1441 ]) 1463 ])
1442 def debugupgraderepo(ui, repo, run=False, optimize=None): 1464 def debugupgraderepo(ui, repo, run=False, optimize=None):