rb8-trepanning 0.1.3 → 0.1.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (106) hide show
  1. data/CHANGES +10 -0
  2. data/ChangeLog +276 -0
  3. data/Makefile +13 -0
  4. data/Rakefile +1 -2
  5. data/app/display.rb +41 -1
  6. data/app/irb.rb +55 -49
  7. data/app/options.rb +3 -2
  8. data/app/run.rb +25 -7
  9. data/app/util.rb +19 -1
  10. data/bin/trepan8 +0 -2
  11. data/data/perldb.bindings +17 -0
  12. data/interface/script.rb +1 -1
  13. data/interface/server.rb +1 -1
  14. data/interface/user.rb +3 -1
  15. data/{interface/base_intf.rb → interface.rb} +1 -1
  16. data/io/input.rb +1 -1
  17. data/io/null_output.rb +1 -1
  18. data/io/string_array.rb +2 -2
  19. data/io/tcpclient.rb +1 -1
  20. data/io/tcpserver.rb +1 -1
  21. data/{io/base_io.rb → io.rb} +0 -0
  22. data/lib/debugger.rb +0 -1
  23. data/lib/trepanning.rb +3 -1
  24. data/processor/command/alias.rb +13 -2
  25. data/processor/command/backtrace.rb +2 -1
  26. data/processor/command/base/subcmd.rb +1 -5
  27. data/processor/command/base/submgr.rb +1 -1
  28. data/processor/command/base/subsubcmd.rb +1 -1
  29. data/processor/command/base/subsubmgr.rb +4 -4
  30. data/processor/command/break.rb +19 -11
  31. data/processor/command/catch.rb +1 -1
  32. data/processor/command/complete.rb +1 -1
  33. data/processor/command/continue.rb +7 -1
  34. data/processor/command/directory.rb +2 -2
  35. data/processor/command/disable.rb +13 -14
  36. data/processor/command/display.rb +3 -1
  37. data/processor/command/down.rb +8 -8
  38. data/processor/command/edit.rb +1 -1
  39. data/processor/command/enable.rb +21 -22
  40. data/processor/command/eval.rb +1 -2
  41. data/processor/command/exit.rb +25 -8
  42. data/processor/command/finish.rb +7 -2
  43. data/processor/command/frame.rb +1 -1
  44. data/processor/command/help.rb +3 -4
  45. data/processor/command/info.rb +2 -0
  46. data/processor/command/info_subcmd/files.rb +2 -2
  47. data/processor/command/info_subcmd/locals.rb +6 -53
  48. data/processor/command/info_subcmd/source.rb +10 -4
  49. data/processor/command/info_subcmd/variables.rb +35 -0
  50. data/processor/command/info_subcmd/variables_subcmd/.gitignore +1 -0
  51. data/processor/command/info_subcmd/variables_subcmd/class.rb +42 -0
  52. data/processor/command/info_subcmd/variables_subcmd/constant.rb +42 -0
  53. data/processor/command/info_subcmd/{globals.rb → variables_subcmd/globals.rb} +22 -17
  54. data/processor/command/info_subcmd/variables_subcmd/instance.rb +42 -0
  55. data/processor/command/info_subcmd/variables_subcmd/locals.rb +80 -0
  56. data/processor/command/kill.rb +8 -7
  57. data/processor/command/list.rb +2 -2
  58. data/processor/command/macro.rb +27 -9
  59. data/processor/command/next.rb +1 -1
  60. data/processor/command/parsetree.rb +1 -1
  61. data/processor/command/pp.rb +1 -1
  62. data/processor/command/pr.rb +1 -1
  63. data/processor/command/ps.rb +1 -1
  64. data/processor/command/restart.rb +1 -1
  65. data/processor/command/save.rb +1 -1
  66. data/processor/command/set_subcmd/auto.rb +7 -1
  67. data/processor/command/set_subcmd/different.rb +1 -1
  68. data/processor/command/set_subcmd/trace.rb +5 -4
  69. data/processor/command/set_subcmd/trace_subcmd/print.rb +4 -3
  70. data/processor/command/shell.rb +5 -4
  71. data/processor/command/show_subcmd/{alias.rb → aliases.rb} +2 -2
  72. data/processor/command/source.rb +1 -1
  73. data/processor/command/step.rb +2 -5
  74. data/processor/command/tbreak.rb +1 -1
  75. data/processor/command/unalias.rb +13 -8
  76. data/processor/command/undisplay.rb +13 -9
  77. data/processor/command/up.rb +12 -14
  78. data/processor/command.rb +138 -230
  79. data/processor/display.rb +46 -10
  80. data/processor/help.rb +5 -3
  81. data/processor/hook.rb +2 -2
  82. data/processor/location.rb +25 -0
  83. data/processor/mock.rb +3 -2
  84. data/processor/msg.rb +55 -42
  85. data/processor/old-command.rb +270 -0
  86. data/processor/{processor.rb → old-processor.rb} +7 -8
  87. data/processor/running.rb +7 -12
  88. data/processor/subcmd.rb +15 -41
  89. data/processor/validate.rb +240 -238
  90. data/{processor/main.rb → processor.rb} +20 -42
  91. data/test/data/trace.cmd +6 -0
  92. data/test/data/trace.right +46 -0
  93. data/test/integration/helper.rb +2 -0
  94. data/test/integration/test-trace.rb +29 -0
  95. data/test/unit/cmd-helper.rb +2 -3
  96. data/test/unit/test-app-options.rb +13 -11
  97. data/test/unit/test-app-run.rb +7 -1
  98. data/test/unit/test-base-cmd.rb +1 -1
  99. data/test/unit/test-cmd-kill.rb +11 -4
  100. data/test/unit/test-io-tcpserver.rb +9 -4
  101. data/test/unit/test-proc-eval.rb +1 -2
  102. data/test/unit/test-proc-location.rb +26 -32
  103. data/test/unit/test-subcmd-help.rb +1 -1
  104. data/trepan8.gemspec +9 -1
  105. metadata +60 -17
  106. data/processor/command/base/cmd.rb +0 -177
@@ -0,0 +1,46 @@
1
+ -- (gcd.rb:4)
2
+ def gcd(a, b)
3
+ -- (gcd.rb:18)
4
+ gcd(3,5)
5
+ -- (gcd.rb:6)
6
+ if a > b
7
+ -- (gcd.rb:6)
8
+ if a > b
9
+ -- (gcd.rb:10)
10
+ return nil if a <= 0
11
+ -- (gcd.rb:10)
12
+ return nil if a <= 0
13
+ -- (gcd.rb:12)
14
+ if a == 1 or b-a == 0
15
+ -- (gcd.rb:12)
16
+ if a == 1 or b-a == 0
17
+ -- (gcd.rb:15)
18
+ return gcd(b-a, a)
19
+ -- (gcd.rb:6)
20
+ if a > b
21
+ -- (gcd.rb:6)
22
+ if a > b
23
+ -- (gcd.rb:10)
24
+ return nil if a <= 0
25
+ -- (gcd.rb:10)
26
+ return nil if a <= 0
27
+ -- (gcd.rb:12)
28
+ if a == 1 or b-a == 0
29
+ -- (gcd.rb:12)
30
+ if a == 1 or b-a == 0
31
+ -- (gcd.rb:15)
32
+ return gcd(b-a, a)
33
+ -- (gcd.rb:6)
34
+ if a > b
35
+ -- (gcd.rb:6)
36
+ if a > b
37
+ -- (gcd.rb:10)
38
+ return nil if a <= 0
39
+ -- (gcd.rb:10)
40
+ return nil if a <= 0
41
+ -- (gcd.rb:12)
42
+ if a == 1 or b-a == 0
43
+ -- (gcd.rb:12)
44
+ if a == 1 or b-a == 0
45
+ -- (gcd.rb:13)
46
+ return a
@@ -135,6 +135,8 @@ module TestHelper
135
135
  def config_load(key, may_be_nil=false, default_value='')
136
136
  conf = File.join('config.private.yaml') # try private first
137
137
  conf = File.join('config.yaml') unless File.exists?(conf)
138
+ assert(File.exists?(conf),
139
+ "Should be able to find YAML file #{File.expand_path(conf)}")
138
140
  value = YAML.load_file(conf)[key]
139
141
  assert_not_nil(value, "#{key} is set in config.yaml") unless may_be_nil
140
142
  value || default_value
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env ruby
2
+ require 'test/unit'
3
+ require 'rubygems'; require 'require_relative'
4
+ require_relative 'helper'
5
+
6
+ class TestTrace < Test::Unit::TestCase
7
+ include TestHelper
8
+ TREPAN_LOC = /.. \(.+:\d+( @\d+)?\)/
9
+ def test_trepan_trace
10
+ common_setup(__FILE__)
11
+ Dir.chdir(@srcdir) do
12
+ last_line = nil
13
+ filter = Proc.new{|got_lines, correct_lines|
14
+ got_lines.each_with_index do |line, i|
15
+ line.gsub!(/\((?:.*\/)?(.+:\d+)/, '(\1') if line =~ TREPAN_LOC
16
+ if line.start_with?('at_exit')
17
+ last_line = i-2
18
+ break
19
+ end
20
+ end
21
+ got_lines[last_line..-1] = got_lines[last_line] if last_line
22
+ }
23
+ rightfile = File.join(%W(.. data #{@testname}))
24
+ assert_equal(true, run_debugger(@testname,
25
+ "-x #{@prefix}../example/gcd.rb 3 5",
26
+ nil, filter, nil, rightfile))
27
+ end
28
+ end
29
+ end
@@ -1,6 +1,5 @@
1
1
  require 'test/unit'
2
2
  require 'rubygems'; require 'require_relative'
3
- # require_relative '../../app/core'
4
3
  require_relative '../../processor/mock'
5
4
  require_relative '../../processor/frame'
6
5
 
@@ -10,9 +9,9 @@ module UnitHelper
10
9
  module_function
11
10
  def common_setup
12
11
  @dbg ||= MockDebugger::MockDebugger.new(:nx => true)
13
- @cmdproc = Trepan::CmdProcessor.new(@dbg.intf)
12
+ @cmdproc ||= Trepan::CmdProcessor.new(@dbg.intf)
14
13
  @cmdproc.frame_initialize
15
- @cmdproc.dbgr = @dbg
14
+ @cmdproc.dbgr ||= @dbg
16
15
  @cmds = @cmdproc.commands
17
16
 
18
17
  def @cmdproc.errmsg(message, opts={})
@@ -52,18 +52,20 @@ class TestAppOptions < Test::Unit::TestCase
52
52
  end
53
53
  end
54
54
 
55
- # FIXME: have to work around the fact that exit is called by help.
56
55
  def no_test_help_and_version_opts
57
- %w(help version).each do |name|
58
- setup
59
- o = ["--#{name}"]
60
- rest = @opts.parse o
61
- assert_not_equal('', @stdout.string)
62
- assert_equal('', @stderr.string)
63
- assert_equal(true, @options[name.to_sym])
64
- other_sym = 'help' == name ? :version : :help
65
- assert_equal(false, @options.member?(other_sym))
66
- end
56
+ omit unless Process.respond_to?(:fork)
57
+ Process.fork {
58
+ %w(help version).each do |name|
59
+ setup
60
+ o = ["--#{name}"]
61
+ rest = @opts.parse o
62
+ assert_not_equal('', @stdout.string)
63
+ assert_equal('', @stderr.string)
64
+ assert_equal(true, @options[name.to_sym])
65
+ other_sym = 'help' == name ? :version : :help
66
+ assert_equal(false, @options.member?(other_sym))
67
+ end
68
+ }
67
69
  end
68
70
 
69
71
  def test_both_client_server_opts
@@ -5,10 +5,16 @@ require_relative '../../app/run'
5
5
 
6
6
  class TestAppRun < Test::Unit::TestCase
7
7
  include Trepan
8
- def test_basic
8
+ def test_whence
9
9
  assert_equal(true, File.executable?(whence_file('irb')))
10
10
  ng = whence_file('probably-does-not-exist')
11
11
  assert_equal(true, File.executable?(ng) || ng == 'probably-does-not-exist')
12
12
  end
13
13
 
14
+ def test_ruby_syntax_errors
15
+ assert_nil ruby_syntax_errors __FILE__
16
+ readme = File.join(File.dirname(__FILE__), %w(.. .. README.textile))
17
+ assert ruby_syntax_errors(readme)
18
+ end
19
+
14
20
  end
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'test/unit'
3
3
  require 'rubygems'; require 'require_relative'
4
- require_relative '../../processor/command/base/cmd'
4
+ require_relative '../../processor/command'
5
5
 
6
6
  class Trepan::Command::Test < Trepan::Command
7
7
  NAME = 'test'
@@ -24,10 +24,17 @@ class TestCommandKill < Test::Unit::TestCase
24
24
  end
25
25
 
26
26
  def test_kill_command
27
- @cmd.run([@name, 'foo'])
28
- assert_equal(false, @cmd.proc.leave_cmd_loop)
29
- assert_equal(1, @cmd.instance_variable_get('@errmsgs').size)
30
-
27
+ assert_equal(['unconditionally'], @cmd.complete('uncon'))
28
+
29
+ if Signal.list.member?('HUP')
30
+ assert_equal(['hup'], @cmd.complete('hu'))
31
+ assert_equal(['HUP'], @cmd.complete('HU'))
32
+ end
33
+
34
+ @cmd.run([@name, 'foo'])
35
+ assert_equal(false, @cmd.proc.leave_cmd_loop)
36
+ assert_equal(1, @cmd.instance_variable_get('@errmsgs').size)
37
+
31
38
  if false
32
39
  save_trap = Signal.trap(10) {
33
40
  @success = true
@@ -12,10 +12,15 @@ class TestTCPDbgServer < Test::Unit::TestCase
12
12
 
13
13
  def test_basic
14
14
  server = Trepan::TCPDbgServer.new
15
- server.open({ :open => false,
16
- :port => 1027,
17
- :host => '127.0.0.1'
18
- })
15
+ begin
16
+ server.open({ :open => false,
17
+ :port => 1027,
18
+ :host => '127.0.0.1'
19
+ })
20
+ rescue
21
+ puts "Skip #{__FILE__} because Port 1027 is in use"
22
+ assert true
23
+ end
19
24
  threads = []
20
25
  msgs = %w(one two three)
21
26
  Thread.new do
@@ -1,8 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'rubygems'; require 'require_relative'
3
3
  require_relative 'cmd-helper'
4
- require_relative '../../processor/main' # Have to include before frame!
5
- # FIXME
4
+ require_relative '../../processor'
6
5
  require_relative '../../app/frame'
7
6
  require_relative '../../processor/eval'
8
7
  require_relative '../../processor/mock'
@@ -1,77 +1,71 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'test/unit'
3
3
  require 'rubygems'; require 'require_relative'
4
- require 'ruby-debug';
5
4
  begin
6
5
  require 'linecache'
7
6
  rescue LoadError
8
7
  require 'linecache19'
9
8
  end
10
9
  require_relative '../../processor/location'
11
- require_relative '../../processor/mock'
12
-
13
- $errors = []
14
- $msgs = []
10
+ require_relative 'cmd-helper'
15
11
 
16
12
  # Test Trepan::CmdProcessor location portion
17
13
  class TestCmdProcessorLocation < Test::Unit::TestCase
18
14
 
15
+ include UnitHelper
19
16
  def setup
20
- $errors = []
21
- $msgs = []
22
- @dbgr = MockDebugger::MockDebugger.new
23
- @proc = Trepan::CmdProcessor.new(@dbgr.intf)
24
- @file = File.basename(__FILE__)
17
+ common_setup
18
+ @file ||= File.basename(__FILE__)
25
19
  end
26
20
 
27
21
  # Test resolve_file_with_dir() and line_at()
28
22
  def test_line_at
29
- @proc.settings[:directory] = ''
30
- assert_equal(nil, @proc.resolve_file_with_dir(@file))
23
+ @cmdproc.settings[:directory] = ''
24
+ assert_equal(nil, @cmdproc.resolve_file_with_dir(@file))
31
25
  if File.expand_path(Dir.pwd) == File.expand_path(File.dirname(__FILE__))
32
- line = @proc.line_at(@file, __LINE__)
33
- assert_match(/line = @proc.line_at/, line)
26
+ line = @cmdproc.line_at(@file, __LINE__)
27
+ assert_match(/line = @cmdproc.line_at/, line)
34
28
  else
35
- assert_equal(nil, @proc.line_at(@file, __LINE__))
29
+ assert_equal(nil, @cmdproc.line_at(@file, __LINE__))
36
30
  end
37
- dir = @proc.settings[:directory] = File.dirname(__FILE__)
31
+ dir = @cmdproc.settings[:directory] = File.dirname(__FILE__)
38
32
  assert_equal(File.join(dir, @file),
39
- @proc.resolve_file_with_dir('test-proc-location.rb'))
33
+ @cmdproc.resolve_file_with_dir('test-proc-location.rb'))
40
34
  test_line = 'test_line'
41
- line = @proc.line_at(@file, __LINE__-1)
35
+ line = @cmdproc.line_at(@file, __LINE__-1)
42
36
  assert_match(/#{line}/, line)
43
37
  end
44
38
 
45
39
  def test_loc_and_text
46
- @proc.frame_index = 0
47
- @proc.frame_initialize
40
+ @cmdproc.frame_index = 0
41
+ @cmdproc.frame_initialize
48
42
  Debugger.start
49
- @proc.frame_setup(Debugger.current_context, nil)
43
+ @cmdproc.frame_setup(Debugger.current_context, nil)
50
44
  LineCache::clear_file_cache
51
- dir = @proc.settings[:directory] = File.dirname(__FILE__)
52
- loc, line_no, text = @proc.loc_and_text('hi')
45
+ dir = @cmdproc.settings[:directory] = File.dirname(__FILE__)
46
+ loc, line_no, text = @cmdproc.loc_and_text('hi')
53
47
  assert loc and line_no.is_a?(Fixnum) and text
54
- assert @proc.current_source_text
48
+ assert @cmdproc.current_source_text
55
49
  # FIXME test that filename remapping works.
56
50
  Debugger.stop
57
51
  end
58
52
 
59
53
  def test_canonic_file
60
- @proc.settings[:basename] = false
61
- assert_equal File.expand_path(__FILE__), @proc.canonic_file(__FILE__)
62
- @proc.settings[:basename] = true
63
- assert_equal File.basename(__FILE__), @proc.canonic_file(__FILE__)
54
+ @cmdproc.settings[:basename] = false
55
+ assert_equal File.expand_path(__FILE__), @cmdproc.canonic_file(__FILE__)
56
+ @cmdproc.settings[:basename] = true
57
+ assert_equal File.basename(__FILE__), @cmdproc.canonic_file(__FILE__)
64
58
  end
65
59
 
66
60
 
67
61
  def test_eval_current_source_text
68
62
  Debugger.start
69
63
  eval <<-EOE
70
- @proc.frame_index = 0
71
- @proc.frame_initialize
72
- @proc.frame_setup(Debugger.current_context, nil)
64
+ @cmdproc.frame_index = 0
65
+ @cmdproc.frame_initialize
66
+ @cmdproc.frame_setup(Debugger.current_context, nil)
73
67
  LineCache::clear_file_cache
74
- assert @proc.current_source_text
68
+ assert @cmdproc.current_source_text
75
69
  EOE
76
70
  Debugger.stop
77
71
  end
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env ruby
2
2
  require 'test/unit'
3
3
  require 'rubygems'; require 'require_relative'
4
- require_relative '../../processor/main'
4
+ require_relative '../../processor'
5
5
  require_relative '../../processor/mock'
6
6
 
7
7
  # Test Trepan::CmdProcessor
data/trepan8.gemspec CHANGED
@@ -27,11 +27,13 @@ EOF
27
27
 
28
28
  if RUBY_VERSION.start_with?('1.8')
29
29
  spec.add_dependency('linecache', '>= 0.43')
30
+ spec.add_dependency('ruby-debug-base', '>= 0.10.4')
30
31
  elsif RUBY_VERSION.start_with?('1.9')
31
32
  spec.add_dependency('linecache19', '>= 0.5.12')
32
33
  end
33
34
 
34
35
  spec.add_dependency('rbx-require-relative', '> 0.0.4')
36
+ spec.add_dependency('rdoc', '> 2.4.2')
35
37
  spec.add_dependency('columnize')
36
38
  spec.author = 'R. Bernstein'
37
39
  spec.bindir = 'bin'
@@ -42,7 +44,13 @@ EOF
42
44
  spec.homepage = 'http://wiki.github.com/rocky/rb8-trepanning'
43
45
  spec.name = 'rb8-trepanning'
44
46
  spec.license = 'MIT'
45
- spec.platform = Gem::Platform::RUBY
47
+ if RUBY_VERSION =~ /^1.8.7/
48
+ spec.platform = Gem::Platform::RUBY
49
+ elsif RUBY_VERSION =~ /^1.9.2/
50
+ spec.platform = Gem::Platform::new ['universal', 'ruby', '1.9.2']
51
+ else
52
+ STDERR.puts "Have only tested on MRI 1.8.7 and 1.9.2"
53
+ end
46
54
  spec.require_path = 'lib'
47
55
  spec.summary = 'Ruby MRI 1.8.7 and 1.9.2 Trepanning Debugger'
48
56
  spec.version = Trepan::VERSION
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rb8-trepanning
3
3
  version: !ruby/object:Gem::Version
4
- hash: 29
4
+ hash: 19
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 3
10
- version: 0.1.3
9
+ - 4
10
+ version: 0.1.4
11
11
  platform: ruby
12
12
  authors:
13
13
  - R. Bernstein
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-06-12 00:00:00 Z
18
+ date: 2011-10-27 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: linecache
@@ -33,9 +33,25 @@ dependencies:
33
33
  type: :runtime
34
34
  version_requirements: *id001
35
35
  - !ruby/object:Gem::Dependency
36
- name: rbx-require-relative
36
+ name: ruby-debug-base
37
37
  prerelease: false
38
38
  requirement: &id002 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ hash: 63
44
+ segments:
45
+ - 0
46
+ - 10
47
+ - 4
48
+ version: 0.10.4
49
+ type: :runtime
50
+ version_requirements: *id002
51
+ - !ruby/object:Gem::Dependency
52
+ name: rbx-require-relative
53
+ prerelease: false
54
+ requirement: &id003 !ruby/object:Gem::Requirement
39
55
  none: false
40
56
  requirements:
41
57
  - - ">"
@@ -47,11 +63,27 @@ dependencies:
47
63
  - 4
48
64
  version: 0.0.4
49
65
  type: :runtime
50
- version_requirements: *id002
66
+ version_requirements: *id003
67
+ - !ruby/object:Gem::Dependency
68
+ name: rdoc
69
+ prerelease: false
70
+ requirement: &id004 !ruby/object:Gem::Requirement
71
+ none: false
72
+ requirements:
73
+ - - ">"
74
+ - !ruby/object:Gem::Version
75
+ hash: 27
76
+ segments:
77
+ - 2
78
+ - 4
79
+ - 2
80
+ version: 2.4.2
81
+ type: :runtime
82
+ version_requirements: *id004
51
83
  - !ruby/object:Gem::Dependency
52
84
  name: columnize
53
85
  prerelease: false
54
- requirement: &id003 !ruby/object:Gem::Requirement
86
+ requirement: &id005 !ruby/object:Gem::Requirement
55
87
  none: false
56
88
  requirements:
57
89
  - - ">="
@@ -61,7 +93,7 @@ dependencies:
61
93
  - 0
62
94
  version: "0"
63
95
  type: :runtime
64
- version_requirements: *id003
96
+ version_requirements: *id005
65
97
  description: |
66
98
  A modular, testable, Ruby debugger using some of the best ideas from ruby-debug, other debuggers, and Ruby Rails.
67
99
 
@@ -83,6 +115,7 @@ files:
83
115
  - .gitignore
84
116
  - CHANGES
85
117
  - ChangeLog
118
+ - Makefile
86
119
  - README.textile
87
120
  - Rakefile
88
121
  - app/.gitignore
@@ -102,14 +135,15 @@ files:
102
135
  - bin/trepan8
103
136
  - data/.gitignore
104
137
  - data/irbrc
138
+ - data/perldb.bindings
139
+ - interface.rb
105
140
  - interface/.gitignore
106
- - interface/base_intf.rb
107
141
  - interface/client.rb
108
142
  - interface/comcodes.rb
109
143
  - interface/script.rb
110
144
  - interface/server.rb
111
145
  - interface/user.rb
112
- - io/base_io.rb
146
+ - io.rb
113
147
  - io/input.rb
114
148
  - io/null_output.rb
115
149
  - io/string_array.rb
@@ -118,6 +152,7 @@ files:
118
152
  - io/tcpserver.rb
119
153
  - lib/debugger.rb
120
154
  - lib/trepanning.rb
155
+ - processor.rb
121
156
  - processor/.gitignore
122
157
  - processor/command-ruby-debug/breakpoints.rb
123
158
  - processor/command-ruby-debug/catchpoint.rb
@@ -141,7 +176,6 @@ files:
141
176
  - processor/command/.gitignore
142
177
  - processor/command/alias.rb
143
178
  - processor/command/backtrace.rb
144
- - processor/command/base/cmd.rb
145
179
  - processor/command/base/subcmd.rb
146
180
  - processor/command/base/submgr.rb
147
181
  - processor/command/base/subsubcmd.rb
@@ -174,7 +208,6 @@ files:
174
208
  - processor/command/info_subcmd/breakpoints.rb
175
209
  - processor/command/info_subcmd/catch.rb
176
210
  - processor/command/info_subcmd/files.rb
177
- - processor/command/info_subcmd/globals.rb
178
211
  - processor/command/info_subcmd/line.rb
179
212
  - processor/command/info_subcmd/locals.rb
180
213
  - processor/command/info_subcmd/macro.rb
@@ -183,6 +216,13 @@ files:
183
216
  - processor/command/info_subcmd/source.rb
184
217
  - processor/command/info_subcmd/stack.rb
185
218
  - processor/command/info_subcmd/threads.rb
219
+ - processor/command/info_subcmd/variables.rb
220
+ - processor/command/info_subcmd/variables_subcmd/.gitignore
221
+ - processor/command/info_subcmd/variables_subcmd/class.rb
222
+ - processor/command/info_subcmd/variables_subcmd/constant.rb
223
+ - processor/command/info_subcmd/variables_subcmd/globals.rb
224
+ - processor/command/info_subcmd/variables_subcmd/instance.rb
225
+ - processor/command/info_subcmd/variables_subcmd/locals.rb
186
226
  - processor/command/kill.rb
187
227
  - processor/command/list.rb
188
228
  - processor/command/macro.rb
@@ -221,7 +261,7 @@ files:
221
261
  - processor/command/show.rb
222
262
  - processor/command/show_subcmd/.gitignore
223
263
  - processor/command/show_subcmd/abbrev.rb
224
- - processor/command/show_subcmd/alias.rb
264
+ - processor/command/show_subcmd/aliases.rb
225
265
  - processor/command/show_subcmd/args.rb
226
266
  - processor/command/show_subcmd/auto.rb
227
267
  - processor/command/show_subcmd/auto_subcmd/eval.rb
@@ -264,10 +304,10 @@ files:
264
304
  - processor/hook.rb
265
305
  - processor/load_cmds.rb
266
306
  - processor/location.rb
267
- - processor/main.rb
268
307
  - processor/mock.rb
269
308
  - processor/msg.rb
270
- - processor/processor.rb
309
+ - processor/old-command.rb
310
+ - processor/old-processor.rb
271
311
  - processor/running.rb
272
312
  - processor/stepping.rb
273
313
  - processor/subcmd.rb
@@ -294,6 +334,8 @@ files:
294
334
  - test/data/stepping-1.9.right
295
335
  - test/data/stepping.cmd
296
336
  - test/data/stepping.right
337
+ - test/data/trace.cmd
338
+ - test/data/trace.right
297
339
  - test/data/trepan8-save.1
298
340
  - test/example/bp_loop_issue.rb
299
341
  - test/example/break-bug.rb
@@ -321,6 +363,7 @@ files:
321
363
  - test/integration/test-raise.rb
322
364
  - test/integration/test-source.rb
323
365
  - test/integration/test-stepping.rb
366
+ - test/integration/test-trace.rb
324
367
  - test/unit/.gitignore
325
368
  - test/unit/cmd-helper.rb
326
369
  - test/unit/mock-helper.rb
@@ -359,7 +402,7 @@ licenses:
359
402
  post_install_message:
360
403
  rdoc_options:
361
404
  - --title
362
- - Trepan 0.1.3 Documentation
405
+ - Trepan 0.1.4 Documentation
363
406
  require_paths:
364
407
  - lib
365
408
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -383,7 +426,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
383
426
  requirements: []
384
427
 
385
428
  rubyforge_project:
386
- rubygems_version: 1.8.5
429
+ rubygems_version: 1.8.6
387
430
  signing_key:
388
431
  specification_version: 3
389
432
  summary: Ruby MRI 1.8.7 and 1.9.2 Trepanning Debugger