mercurial/debugcommands.py
changeset 32375 04baab18d60a
parent 32371 151cc3b3d799
child 32376 b16cb0a27377
equal deleted inserted replaced
32374:194b0f781132 32375:04baab18d60a
   499                                        usedots=dots,
   499                                        usedots=dots,
   500                                        maxlinewidth=70):
   500                                        maxlinewidth=70):
   501         ui.write(line)
   501         ui.write(line)
   502         ui.write("\n")
   502         ui.write("\n")
   503 
   503 
   504 @command('debugdata', commands.debugrevlogopts, _('-c|-m|FILE REV'))
   504 @command('debugdata', cmdutil.debugrevlogopts, _('-c|-m|FILE REV'))
   505 def debugdata(ui, repo, file_, rev=None, **opts):
   505 def debugdata(ui, repo, file_, rev=None, **opts):
   506     """dump the contents of a data file revision"""
   506     """dump the contents of a data file revision"""
   507     if opts.get('changelog') or opts.get('manifest') or opts.get('dir'):
   507     if opts.get('changelog') or opts.get('manifest') or opts.get('dir'):
   508         if rev is not None:
   508         if rev is not None:
   509             raise error.CommandError('debugdata', _('invalid arguments'))
   509             raise error.CommandError('debugdata', _('invalid arguments'))
   531     if range:
   531     if range:
   532         m = util.matchdate(range)
   532         m = util.matchdate(range)
   533         ui.write(("match: %s\n") % m(d[0]))
   533         ui.write(("match: %s\n") % m(d[0]))
   534 
   534 
   535 @command('debugdeltachain',
   535 @command('debugdeltachain',
   536     commands.debugrevlogopts + commands.formatteropts,
   536     cmdutil.debugrevlogopts + cmdutil.formatteropts,
   537     _('-c|-m|FILE'),
   537     _('-c|-m|FILE'),
   538     optionalrepo=True)
   538     optionalrepo=True)
   539 def debugdeltachain(ui, repo, file_=None, **opts):
   539 def debugdeltachain(ui, repo, file_=None, **opts):
   540     """dump information about delta chains in a revlog
   540     """dump information about delta chains in a revlog
   541 
   541 
   666 
   666 
   667 @command('debugdiscovery',
   667 @command('debugdiscovery',
   668     [('', 'old', None, _('use old-style discovery')),
   668     [('', 'old', None, _('use old-style discovery')),
   669     ('', 'nonheads', None,
   669     ('', 'nonheads', None,
   670      _('use old-style discovery with non-heads included')),
   670      _('use old-style discovery with non-heads included')),
   671     ] + commands.remoteopts,
   671     ] + cmdutil.remoteopts,
   672     _('[-l REV] [-r REV] [-b BRANCH]... [OTHER]'))
   672     _('[-l REV] [-r REV] [-b BRANCH]... [OTHER]'))
   673 def debugdiscovery(ui, repo, remoteurl="default", **opts):
   673 def debugdiscovery(ui, repo, remoteurl="default", **opts):
   674     """runs the changeset discovery protocol in isolation"""
   674     """runs the changeset discovery protocol in isolation"""
   675     remoteurl, branches = hg.parseurl(ui.expandpath(remoteurl),
   675     remoteurl, branches = hg.parseurl(ui.expandpath(remoteurl),
   676                                       opts.get('branch'))
   676                                       opts.get('branch'))
   728         remoterevs, _checkout = hg.addbranchrevs(repo, remote, branches,
   728         remoterevs, _checkout = hg.addbranchrevs(repo, remote, branches,
   729                                                  opts.get('remote_head'))
   729                                                  opts.get('remote_head'))
   730         localrevs = opts.get('local_head')
   730         localrevs = opts.get('local_head')
   731         doit(localrevs, remoterevs)
   731         doit(localrevs, remoterevs)
   732 
   732 
   733 @command('debugextensions', commands.formatteropts, [], norepo=True)
   733 @command('debugextensions', cmdutil.formatteropts, [], norepo=True)
   734 def debugextensions(ui, **opts):
   734 def debugextensions(ui, **opts):
   735     '''show information about active extensions'''
   735     '''show information about active extensions'''
   736     exts = extensions.extensions(ui)
   736     exts = extensions.extensions(ui)
   737     hgver = util.version()
   737     hgver = util.version()
   738     fm = ui.formatter('debugextensions', opts)
   738     fm = ui.formatter('debugextensions', opts)
   880                 ui.write(_("(ignore rule in %s, line %d: '%s')\n")
   880                 ui.write(_("(ignore rule in %s, line %d: '%s')\n")
   881                          % (ignorefile, lineno, line))
   881                          % (ignorefile, lineno, line))
   882             else:
   882             else:
   883                 ui.write(_("%s is not ignored\n") % f)
   883                 ui.write(_("%s is not ignored\n") % f)
   884 
   884 
   885 @command('debugindex', commands.debugrevlogopts +
   885 @command('debugindex', cmdutil.debugrevlogopts +
   886     [('f', 'format', 0, _('revlog format'), _('FORMAT'))],
   886     [('f', 'format', 0, _('revlog format'), _('FORMAT'))],
   887     _('[-f FORMAT] -c|-m|FILE'),
   887     _('[-f FORMAT] -c|-m|FILE'),
   888     optionalrepo=True)
   888     optionalrepo=True)
   889 def debugindex(ui, repo, file_=None, **opts):
   889 def debugindex(ui, repo, file_=None, **opts):
   890     """dump the contents of an index file"""
   890     """dump the contents of an index file"""
   936             pr = r.parentrevs(i)
   936             pr = r.parentrevs(i)
   937             ui.write("% 6d %04x % 8d % 8d % 8d % 6d % 6d % 6d % 6d %s\n" % (
   937             ui.write("% 6d %04x % 8d % 8d % 8d % 6d % 6d % 6d % 6d %s\n" % (
   938                     i, r.flags(i), r.start(i), r.length(i), r.rawsize(i),
   938                     i, r.flags(i), r.start(i), r.length(i), r.rawsize(i),
   939                     base, r.linkrev(i), pr[0], pr[1], shortfn(node)))
   939                     base, r.linkrev(i), pr[0], pr[1], shortfn(node)))
   940 
   940 
   941 @command('debugindexdot', commands.debugrevlogopts,
   941 @command('debugindexdot', cmdutil.debugrevlogopts,
   942     _('-c|-m|FILE'), optionalrepo=True)
   942     _('-c|-m|FILE'), optionalrepo=True)
   943 def debugindexdot(ui, repo, file_=None, **opts):
   943 def debugindexdot(ui, repo, file_=None, **opts):
   944     """dump an index DAG as a graphviz dot file"""
   944     """dump an index DAG as a graphviz dot file"""
   945     r = cmdutil.openrevlog(repo, 'debugindexdot', file_, opts)
   945     r = cmdutil.openrevlog(repo, 'debugindexdot', file_, opts)
   946     ui.write(("digraph G {\n"))
   946     ui.write(("digraph G {\n"))
   950         ui.write("\t%d -> %d\n" % (r.rev(pp[0]), i))
   950         ui.write("\t%d -> %d\n" % (r.rev(pp[0]), i))
   951         if pp[1] != nullid:
   951         if pp[1] != nullid:
   952             ui.write("\t%d -> %d\n" % (r.rev(pp[1]), i))
   952             ui.write("\t%d -> %d\n" % (r.rev(pp[1]), i))
   953     ui.write("}\n")
   953     ui.write("}\n")
   954 
   954 
   955 @command('debuginstall', [] + commands.formatteropts, '', norepo=True)
   955 @command('debuginstall', [] + cmdutil.formatteropts, '', norepo=True)
   956 def debuginstall(ui, **opts):
   956 def debuginstall(ui, **opts):
   957     '''test Mercurial installation
   957     '''test Mercurial installation
   958 
   958 
   959     Returns 0 on success.
   959     Returns 0 on success.
   960     '''
   960     '''
  1333          ('', 'record-parents', False,
  1333          ('', 'record-parents', False,
  1334           _('record parent information for the precursor')),
  1334           _('record parent information for the precursor')),
  1335          ('r', 'rev', [], _('display markers relevant to REV')),
  1335          ('r', 'rev', [], _('display markers relevant to REV')),
  1336          ('', 'index', False, _('display index of the marker')),
  1336          ('', 'index', False, _('display index of the marker')),
  1337          ('', 'delete', [], _('delete markers specified by indices')),
  1337          ('', 'delete', [], _('delete markers specified by indices')),
  1338         ] + commands.commitopts2 + commands.formatteropts,
  1338         ] + cmdutil.commitopts2 + cmdutil.formatteropts,
  1339          _('[OBSOLETED [REPLACEMENT ...]]'))
  1339          _('[OBSOLETED [REPLACEMENT ...]]'))
  1340 def debugobsolete(ui, repo, precursor=None, *successors, **opts):
  1340 def debugobsolete(ui, repo, precursor=None, *successors, **opts):
  1341     """create arbitrary obsolete marker
  1341     """create arbitrary obsolete marker
  1342 
  1342 
  1343     With no arguments, displays the list of obsolescence markers."""
  1343     With no arguments, displays the list of obsolescence markers."""
  1505     ui.write('\n')
  1505     ui.write('\n')
  1506 
  1506 
  1507 @command('debugpickmergetool',
  1507 @command('debugpickmergetool',
  1508         [('r', 'rev', '', _('check for files in this revision'), _('REV')),
  1508         [('r', 'rev', '', _('check for files in this revision'), _('REV')),
  1509          ('', 'changedelete', None, _('emulate merging change and delete')),
  1509          ('', 'changedelete', None, _('emulate merging change and delete')),
  1510         ] + commands.walkopts + commands.mergetoolopts,
  1510         ] + cmdutil.walkopts + cmdutil.mergetoolopts,
  1511         _('[PATTERN]...'),
  1511         _('[PATTERN]...'),
  1512         inferrepo=True)
  1512         inferrepo=True)
  1513 def debugpickmergetool(ui, repo, *pats, **opts):
  1513 def debugpickmergetool(ui, repo, *pats, **opts):
  1514     """examine which merge tool is chosen for specified file
  1514     """examine which merge tool is chosen for specified file
  1515 
  1515 
  1682         if o:
  1682         if o:
  1683             ui.write(_("%s renamed from %s:%s\n") % (rel, o[0], hex(o[1])))
  1683             ui.write(_("%s renamed from %s:%s\n") % (rel, o[0], hex(o[1])))
  1684         else:
  1684         else:
  1685             ui.write(_("%s not renamed\n") % rel)
  1685             ui.write(_("%s not renamed\n") % rel)
  1686 
  1686 
  1687 @command('debugrevlog', commands.debugrevlogopts +
  1687 @command('debugrevlog', cmdutil.debugrevlogopts +
  1688     [('d', 'dump', False, _('dump index data'))],
  1688     [('d', 'dump', False, _('dump index data'))],
  1689     _('-c|-m|FILE'),
  1689     _('-c|-m|FILE'),
  1690     optionalrepo=True)
  1690     optionalrepo=True)
  1691 def debugrevlog(ui, repo, file_=None, **opts):
  1691 def debugrevlog(ui, repo, file_=None, **opts):
  1692     """show data and statistics about a revlog"""
  1692     """show data and statistics about a revlog"""
  2161     should complete almost instantaneously and the chances of a consumer being
  2161     should complete almost instantaneously and the chances of a consumer being
  2162     unable to access the repository should be low.
  2162     unable to access the repository should be low.
  2163     """
  2163     """
  2164     return upgrade.upgraderepo(ui, repo, run=run, optimize=optimize)
  2164     return upgrade.upgraderepo(ui, repo, run=run, optimize=optimize)
  2165 
  2165 
  2166 @command('debugwalk', commands.walkopts, _('[OPTION]... [FILE]...'),
  2166 @command('debugwalk', cmdutil.walkopts, _('[OPTION]... [FILE]...'),
  2167          inferrepo=True)
  2167          inferrepo=True)
  2168 def debugwalk(ui, repo, *pats, **opts):
  2168 def debugwalk(ui, repo, *pats, **opts):
  2169     """show how files match on given patterns"""
  2169     """show how files match on given patterns"""
  2170     m = scmutil.match(repo[None], pats, opts)
  2170     m = scmutil.match(repo[None], pats, opts)
  2171     items = list(repo[None].walk(m))
  2171     items = list(repo[None].walk(m))
  2183 
  2183 
  2184 @command('debugwireargs',
  2184 @command('debugwireargs',
  2185     [('', 'three', '', 'three'),
  2185     [('', 'three', '', 'three'),
  2186     ('', 'four', '', 'four'),
  2186     ('', 'four', '', 'four'),
  2187     ('', 'five', '', 'five'),
  2187     ('', 'five', '', 'five'),
  2188     ] + commands.remoteopts,
  2188     ] + cmdutil.remoteopts,
  2189     _('REPO [OPTIONS]... [ONE [TWO]]'),
  2189     _('REPO [OPTIONS]... [ONE [TWO]]'),
  2190     norepo=True)
  2190     norepo=True)
  2191 def debugwireargs(ui, repopath, *vals, **opts):
  2191 def debugwireargs(ui, repopath, *vals, **opts):
  2192     repo = hg.peer(ui, opts, repopath)
  2192     repo = hg.peer(ui, opts, repopath)
  2193     for opt in commands.remoteopts:
  2193     for opt in cmdutil.remoteopts:
  2194         del opts[opt[1]]
  2194         del opts[opt[1]]
  2195     args = {}
  2195     args = {}
  2196     for k, v in opts.iteritems():
  2196     for k, v in opts.iteritems():
  2197         if v:
  2197         if v:
  2198             args[k] = v
  2198             args[k] = v