mercurial/debugcommands.py
changeset 43094 e8cf9ad52a78
parent 43089 c59eb1560c44
child 43106 d783f945a701
equal deleted inserted replaced
43093:9002f4a3dde6 43094:e8cf9ad52a78
  1248 
  1248 
  1249 @command(b'debugfsinfo', [], _(b'[PATH]'), norepo=True)
  1249 @command(b'debugfsinfo', [], _(b'[PATH]'), norepo=True)
  1250 def debugfsinfo(ui, path=b"."):
  1250 def debugfsinfo(ui, path=b"."):
  1251     """show information detected about current filesystem"""
  1251     """show information detected about current filesystem"""
  1252     ui.writenoi18n(b'path: %s\n' % path)
  1252     ui.writenoi18n(b'path: %s\n' % path)
  1253     ui.writenoi18n(b'mounted on: %s\n' % (util.getfsmountpoint(path) or b'(unknown)'))
  1253     ui.writenoi18n(
       
  1254         b'mounted on: %s\n' % (util.getfsmountpoint(path) or b'(unknown)')
       
  1255     )
  1254     ui.writenoi18n(b'exec: %s\n' % (util.checkexec(path) and b'yes' or b'no'))
  1256     ui.writenoi18n(b'exec: %s\n' % (util.checkexec(path) and b'yes' or b'no'))
  1255     ui.writenoi18n(b'fstype: %s\n' % (util.getfstype(path) or b'(unknown)'))
  1257     ui.writenoi18n(b'fstype: %s\n' % (util.getfstype(path) or b'(unknown)'))
  1256     ui.writenoi18n(b'symlink: %s\n' % (util.checklink(path) and b'yes' or b'no'))
  1258     ui.writenoi18n(
  1257     ui.writenoi18n(b'hardlink: %s\n' % (util.checknlink(path) and b'yes' or b'no'))
  1259         b'symlink: %s\n' % (util.checklink(path) and b'yes' or b'no')
       
  1260     )
       
  1261     ui.writenoi18n(
       
  1262         b'hardlink: %s\n' % (util.checknlink(path) and b'yes' or b'no')
       
  1263     )
  1258     casesensitive = b'(unknown)'
  1264     casesensitive = b'(unknown)'
  1259     try:
  1265     try:
  1260         with pycompat.namedtempfile(prefix=b'.debugfsinfo', dir=path) as f:
  1266         with pycompat.namedtempfile(prefix=b'.debugfsinfo', dir=path) as f:
  1261             casesensitive = util.fscasesensitive(f.name) and b'yes' or b'no'
  1267             casesensitive = util.fscasesensitive(f.name) and b'yes' or b'no'
  1262     except OSError:
  1268     except OSError:
  1936                 ui.writenoi18n(b'local: %s\n' % record)
  1942                 ui.writenoi18n(b'local: %s\n' % record)
  1937             elif rtype == b'O':
  1943             elif rtype == b'O':
  1938                 ui.writenoi18n(b'other: %s\n' % record)
  1944                 ui.writenoi18n(b'other: %s\n' % record)
  1939             elif rtype == b'm':
  1945             elif rtype == b'm':
  1940                 driver, mdstate = record.split(b'\0', 1)
  1946                 driver, mdstate = record.split(b'\0', 1)
  1941                 ui.writenoi18n(b'merge driver: %s (state "%s")\n' % (driver, mdstate))
  1947                 ui.writenoi18n(
       
  1948                     b'merge driver: %s (state "%s")\n' % (driver, mdstate)
       
  1949                 )
  1942             elif rtype in b'FDC':
  1950             elif rtype in b'FDC':
  1943                 r = record.split(b'\0')
  1951                 r = record.split(b'\0')
  1944                 f, state, hash, lfile, afile, anode, ofile = r[0:7]
  1952                 f, state, hash, lfile, afile, anode, ofile = r[0:7]
  1945                 if version == 1:
  1953                 if version == 1:
  1946                     onode = b'not stored in v1 format'
  1954                     onode = b'not stored in v1 format'
  1949                     onode, flags = r[7:9]
  1957                     onode, flags = r[7:9]
  1950                 ui.writenoi18n(
  1958                 ui.writenoi18n(
  1951                     b'file: %s (record type "%s", state "%s", hash %s)\n'
  1959                     b'file: %s (record type "%s", state "%s", hash %s)\n'
  1952                     % (f, rtype, state, _hashornull(hash))
  1960                     % (f, rtype, state, _hashornull(hash))
  1953                 )
  1961                 )
  1954                 ui.writenoi18n(b'  local path: %s (flags "%s")\n' % (lfile, flags))
  1962                 ui.writenoi18n(
       
  1963                     b'  local path: %s (flags "%s")\n' % (lfile, flags)
       
  1964                 )
  1955                 ui.writenoi18n(
  1965                 ui.writenoi18n(
  1956                     b'  ancestor path: %s (node %s)\n'
  1966                     b'  ancestor path: %s (node %s)\n'
  1957                     % (afile, _hashornull(anode))
  1967                     % (afile, _hashornull(anode))
  1958                 )
  1968                 )
  1959                 ui.writenoi18n(
  1969                 ui.writenoi18n(
  2795     ui.write(b'\n')
  2805     ui.write(b'\n')
  2796     fmt = pcfmtstr(totalsize)
  2806     fmt = pcfmtstr(totalsize)
  2797     fmt2 = dfmtstr(totalsize)
  2807     fmt2 = dfmtstr(totalsize)
  2798     ui.writenoi18n(b'revisions     : ' + fmt2 % numrevs)
  2808     ui.writenoi18n(b'revisions     : ' + fmt2 % numrevs)
  2799     ui.writenoi18n(b'    merges    : ' + fmt % pcfmt(nummerges, numrevs))
  2809     ui.writenoi18n(b'    merges    : ' + fmt % pcfmt(nummerges, numrevs))
  2800     ui.writenoi18n(b'    normal    : ' + fmt % pcfmt(numrevs - nummerges, numrevs))
  2810     ui.writenoi18n(
       
  2811         b'    normal    : ' + fmt % pcfmt(numrevs - nummerges, numrevs)
       
  2812     )
  2801     ui.writenoi18n(b'revisions     : ' + fmt2 % numrevs)
  2813     ui.writenoi18n(b'revisions     : ' + fmt2 % numrevs)
  2802     ui.writenoi18n(b'    empty     : ' + fmt % pcfmt(numempty, numrevs))
  2814     ui.writenoi18n(b'    empty     : ' + fmt % pcfmt(numempty, numrevs))
  2803     ui.writenoi18n(
  2815     ui.writenoi18n(
  2804         b'                   text  : '
  2816         b'                   text  : '
  2805         + fmt % pcfmt(numemptytext, numemptytext + numemptydelta)
  2817         + fmt % pcfmt(numemptytext, numemptytext + numemptydelta)
  2806     )
  2818     )
  2807     ui.writenoi18n(
  2819     ui.writenoi18n(
  2808         b'                   delta : '
  2820         b'                   delta : '
  2809         + fmt % pcfmt(numemptydelta, numemptytext + numemptydelta)
  2821         + fmt % pcfmt(numemptydelta, numemptytext + numemptydelta)
  2810     )
  2822     )
  2811     ui.writenoi18n(b'    snapshot  : ' + fmt % pcfmt(numfull + numsemi, numrevs))
  2823     ui.writenoi18n(
       
  2824         b'    snapshot  : ' + fmt % pcfmt(numfull + numsemi, numrevs)
       
  2825     )
  2812     for depth in sorted(numsnapdepth):
  2826     for depth in sorted(numsnapdepth):
  2813         ui.write(
  2827         ui.write(
  2814             (b'      lvl-%-3d :       ' % depth)
  2828             (b'      lvl-%-3d :       ' % depth)
  2815             + fmt % pcfmt(numsnapdepth[depth], numrevs)
  2829             + fmt % pcfmt(numsnapdepth[depth], numrevs)
  2816         )
  2830         )
  2879 
  2893 
  2880     if numdeltas > 0:
  2894     if numdeltas > 0:
  2881         ui.write(b'\n')
  2895         ui.write(b'\n')
  2882         fmt = pcfmtstr(numdeltas)
  2896         fmt = pcfmtstr(numdeltas)
  2883         fmt2 = pcfmtstr(numdeltas, 4)
  2897         fmt2 = pcfmtstr(numdeltas, 4)
  2884         ui.writenoi18n(b'deltas against prev  : ' + fmt % pcfmt(numprev, numdeltas))
  2898         ui.writenoi18n(
       
  2899             b'deltas against prev  : ' + fmt % pcfmt(numprev, numdeltas)
       
  2900         )
  2885         if numprev > 0:
  2901         if numprev > 0:
  2886             ui.writenoi18n(
  2902             ui.writenoi18n(
  2887                 b'    where prev = p1  : ' + fmt2 % pcfmt(nump1prev, numprev)
  2903                 b'    where prev = p1  : ' + fmt2 % pcfmt(nump1prev, numprev)
  2888             )
  2904             )
  2889             ui.writenoi18n(
  2905             ui.writenoi18n(
  2891             )
  2907             )
  2892             ui.writenoi18n(
  2908             ui.writenoi18n(
  2893                 b'    other            : ' + fmt2 % pcfmt(numoprev, numprev)
  2909                 b'    other            : ' + fmt2 % pcfmt(numoprev, numprev)
  2894             )
  2910             )
  2895         if gdelta:
  2911         if gdelta:
  2896             ui.writenoi18n(b'deltas against p1    : ' + fmt % pcfmt(nump1, numdeltas))
  2912             ui.writenoi18n(
  2897             ui.writenoi18n(b'deltas against p2    : ' + fmt % pcfmt(nump2, numdeltas))
  2913                 b'deltas against p1    : ' + fmt % pcfmt(nump1, numdeltas)
       
  2914             )
       
  2915             ui.writenoi18n(
       
  2916                 b'deltas against p2    : ' + fmt % pcfmt(nump2, numdeltas)
       
  2917             )
  2898             ui.writenoi18n(
  2918             ui.writenoi18n(
  2899                 b'deltas against other : ' + fmt % pcfmt(numother, numdeltas)
  2919                 b'deltas against other : ' + fmt % pcfmt(numother, numdeltas)
  2900             )
  2920             )
  2901 
  2921 
  2902 
  2922 
  3111 
  3131 
  3112     if opts[b'verify_optimized']:
  3132     if opts[b'verify_optimized']:
  3113         arevs = revset.makematcher(treebystage[b'analyzed'])(repo)
  3133         arevs = revset.makematcher(treebystage[b'analyzed'])(repo)
  3114         brevs = revset.makematcher(treebystage[b'optimized'])(repo)
  3134         brevs = revset.makematcher(treebystage[b'optimized'])(repo)
  3115         if opts[b'show_set'] or (opts[b'show_set'] is None and ui.verbose):
  3135         if opts[b'show_set'] or (opts[b'show_set'] is None and ui.verbose):
  3116             ui.writenoi18n(b"* analyzed set:\n", stringutil.prettyrepr(arevs), b"\n")
  3136             ui.writenoi18n(
  3117             ui.writenoi18n(b"* optimized set:\n", stringutil.prettyrepr(brevs), b"\n")
  3137                 b"* analyzed set:\n", stringutil.prettyrepr(arevs), b"\n"
       
  3138             )
       
  3139             ui.writenoi18n(
       
  3140                 b"* optimized set:\n", stringutil.prettyrepr(brevs), b"\n"
       
  3141             )
  3118         arevs = list(arevs)
  3142         arevs = list(arevs)
  3119         brevs = list(brevs)
  3143         brevs = list(brevs)
  3120         if arevs == brevs:
  3144         if arevs == brevs:
  3121             return 0
  3145             return 0
  3122         ui.writenoi18n(b'--- analyzed\n', label=b'diff.file_a')
  3146         ui.writenoi18n(b'--- analyzed\n', label=b'diff.file_a')
  3416         aliases = ui.configitems(b'templatealias')
  3440         aliases = ui.configitems(b'templatealias')
  3417         tree = templater.parse(tmpl)
  3441         tree = templater.parse(tmpl)
  3418         ui.note(templater.prettyformat(tree), b'\n')
  3442         ui.note(templater.prettyformat(tree), b'\n')
  3419         newtree = templater.expandaliases(tree, aliases)
  3443         newtree = templater.expandaliases(tree, aliases)
  3420         if newtree != tree:
  3444         if newtree != tree:
  3421             ui.notenoi18n(b"* expanded:\n", templater.prettyformat(newtree), b'\n')
  3445             ui.notenoi18n(
       
  3446                 b"* expanded:\n", templater.prettyformat(newtree), b'\n'
       
  3447             )
  3422 
  3448 
  3423     if revs is None:
  3449     if revs is None:
  3424         tres = formatter.templateresources(ui, repo)
  3450         tres = formatter.templateresources(ui, repo)
  3425         t = formatter.maketemplater(ui, tmpl, resources=tres)
  3451         t = formatter.maketemplater(ui, tmpl, resources=tres)
  3426         if ui.verbose:
  3452         if ui.verbose: