tests/test-debugcommands.t
author Mads Kiilerich <madski@unity3d.com>
Sun, 12 Jan 2014 23:28:21 +0100
changeset 20244 47d0843647d1
parent 17188 76e55914c303
child 20283 2b96073f3138
permissions -rw-r--r--
util: introduce util.debugstacktrace for showing a stack trace without crashing This is often very handy when hacking/debugging. Calling util.debugstacktrace('hey') from a place in hg will give something like: hey at: ./hg:38 in <module> /home/user/hgsrc/mercurial/dispatch.py:28 in run /home/user/hgsrc/mercurial/dispatch.py:65 in dispatch /home/user/hgsrc/mercurial/dispatch.py:88 in _runcatch /home/user/hgsrc/mercurial/dispatch.py:740 in _dispatch /home/user/hgsrc/mercurial/dispatch.py:514 in runcommand /home/user/hgsrc/mercurial/dispatch.py:830 in _runcommand /home/user/hgsrc/mercurial/dispatch.py:801 in checkargs /home/user/hgsrc/mercurial/dispatch.py:737 in <lambda> /home/user/hgsrc/mercurial/util.py:472 in check ...
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
17188
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     1
  $ hg init debugrevlog
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     2
  $ cd debugrevlog
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     3
  $ echo a > a
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     4
  $ hg ci -Am adda
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     5
  adding a
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     6
  $ hg debugrevlog -m
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     7
  format : 1
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     8
  flags  : inline
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
     9
  
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    10
  revisions     :  1
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    11
      merges    :  0 ( 0.00%)
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    12
      normal    :  1 (100.00%)
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    13
  revisions     :  1
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    14
      full      :  1 (100.00%)
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    15
      deltas    :  0 ( 0.00%)
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    16
  revision size : 44
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    17
      full      : 44 (100.00%)
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    18
      deltas    :  0 ( 0.00%)
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    19
  
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    20
  avg chain length  : 0
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    21
  compression ratio : 0
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    22
  
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    23
  uncompressed data size (min/max/avg) : 43 / 43 / 43
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    24
  full revision size (min/max/avg)     : 44 / 44 / 44
76e55914c303 debugrevlog: handle numrevs == numfull case (issue3537)
Patrick Mezard <patrick@mezard.eu>
parents:
diff changeset
    25
  delta size (min/max/avg)             : 0 / 0 / 0
20244
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    26
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    27
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    28
Test internal debugstacktrace command
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    29
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    30
  $ cat > debugstacktrace.py << EOF
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    31
  > from mercurial.util import debugstacktrace, dst, sys
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    32
  > def f():
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    33
  >     dst('hello world')
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    34
  > def g():
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    35
  >     f()
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    36
  >     debugstacktrace(skip=-5, f=sys.stdout)
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    37
  > g()
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    38
  > EOF
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    39
  $ python debugstacktrace.py
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    40
  hello world at:
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    41
   debugstacktrace.py:7 in <module>
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    42
   debugstacktrace.py:5 in g
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    43
   debugstacktrace.py:3 in f
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    44
  stacktrace at:
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    45
   debugstacktrace.py:7 *in <module> (glob)
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    46
   debugstacktrace.py:6 *in g (glob)
47d0843647d1 util: introduce util.debugstacktrace for showing a stack trace without crashing
Mads Kiilerich <madski@unity3d.com>
parents: 17188
diff changeset
    47
   */util.py:* in debugstacktrace (glob)