ruby-debug-ide 0.2.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/lib/ruby-debug.rb
CHANGED
@@ -110,7 +110,7 @@ module Debugger
|
|
110
110
|
host ||= 'localhost' # nil does not seem to work for IPv6, localhost does
|
111
111
|
end
|
112
112
|
Debugger.print_debug("Waiting for connection on '#{host}:#{port}'")
|
113
|
-
$stderr.puts "Fast Debugger (ruby-debug-ide 0.
|
113
|
+
$stderr.puts "Fast Debugger (ruby-debug-ide 0.3.0) listens on #{host}:#{port}"
|
114
114
|
server = TCPServer.new(host, port)
|
115
115
|
while (session = server.accept)
|
116
116
|
begin
|
@@ -7,19 +7,19 @@ module Debugger
|
|
7
7
|
end
|
8
8
|
|
9
9
|
def execute
|
10
|
-
|
11
|
-
unless
|
10
|
+
exception_class_name = @match[1]
|
11
|
+
unless exception_class_name
|
12
12
|
errmsg "Exception class must be specified for 'catch' command"
|
13
13
|
else
|
14
14
|
binding = @state.context ? get_binding : TOPLEVEL_BINDING
|
15
|
-
unless debug_eval("#{
|
16
|
-
print_msg "Warning #{
|
15
|
+
unless debug_eval("#{exception_class_name}.is_a?(Class)", binding)
|
16
|
+
print_msg "Warning #{exception_class_name} is not known to be a Class"
|
17
17
|
end
|
18
|
-
Debugger.add_catchpoint(
|
19
|
-
|
18
|
+
Debugger.add_catchpoint(exception_class_name)
|
19
|
+
print_catchpoint_set(exception_class_name)
|
20
20
|
end
|
21
21
|
end
|
22
|
-
|
22
|
+
|
23
23
|
class << self
|
24
24
|
def help_command
|
25
25
|
'catch'
|
data/lib/ruby-debug/processor.rb
CHANGED
@@ -22,6 +22,7 @@ module Debugger
|
|
22
22
|
while input = @interface.read_command
|
23
23
|
# escape % since print_debug might use printf
|
24
24
|
@printer.print_debug "Processing: #{input.gsub('%', '%%')}"
|
25
|
+
# sleep 0.3
|
25
26
|
catch(:debug_error) do
|
26
27
|
if cmd = ctrl_cmds.find{|c| c.match(input) }
|
27
28
|
cmd.execute
|
@@ -31,6 +32,8 @@ module Debugger
|
|
31
32
|
end
|
32
33
|
end
|
33
34
|
rescue IOError, Errno::EPIPE
|
35
|
+
@printer.print_error "INTERNAL ERROR!!! #{$!}\n" rescue nil
|
36
|
+
@printer.print_error $!.backtrace.map{|l| "\t#{l}"}.join("\n") rescue nil
|
34
37
|
rescue Exception
|
35
38
|
@printer.print_error "INTERNAL ERROR!!! #{$!}\n" rescue nil
|
36
39
|
@printer.print_error $!.backtrace.map{|l| "\t#{l}"}.join("\n") rescue nil
|
@@ -106,7 +106,7 @@ module Debugger
|
|
106
106
|
end
|
107
107
|
else
|
108
108
|
has_children = !value.instance_variables.empty? || !value.class.class_variables.empty?
|
109
|
-
value_str = value.to_s || 'nil'
|
109
|
+
value_str = value.to_s || 'nil' rescue "<#to_s method raised exception: #$!>"
|
110
110
|
unless value_str.is_a?(String)
|
111
111
|
value_str = "ERROR: #{value.class}.to_s method returns #{value_str.class}. Should return String."
|
112
112
|
end
|
@@ -147,7 +147,11 @@ module Debugger
|
|
147
147
|
def print_contdition_set(bp_id)
|
148
148
|
print "<conditionSet bp_id=\"%d\"/>", bp_id
|
149
149
|
end
|
150
|
-
|
150
|
+
|
151
|
+
def print_catchpoint_set(exception_class_name)
|
152
|
+
print "<catchpointSet exception=\"%s\"/>", exception_class_name
|
153
|
+
end
|
154
|
+
|
151
155
|
def print_expressions(exps)
|
152
156
|
print_element "expressions" do
|
153
157
|
exps.each_with_index do |(exp, value), idx|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-debug-ide
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Markus Barchfeld, Martin Krauskopf
|
@@ -9,7 +9,7 @@ autorequire: ruby-debug-base
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2008-
|
12
|
+
date: 2008-09-08 00:00:00 +02:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -20,7 +20,7 @@ dependencies:
|
|
20
20
|
requirements:
|
21
21
|
- - "="
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: 0.10.
|
23
|
+
version: 0.10.2
|
24
24
|
version:
|
25
25
|
description: An interface which glues ruby-debug to IDEs like Eclipse (RDT) and NetBeans.
|
26
26
|
email: rubyeclipse-dev-list@sourceforge.net
|
@@ -76,7 +76,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
76
76
|
requirements: []
|
77
77
|
|
78
78
|
rubyforge_project: debug-commons
|
79
|
-
rubygems_version: 1.2.0
|
79
|
+
rubygems_version: 1.2.0.1863
|
80
80
|
signing_key:
|
81
81
|
specification_version: 2
|
82
82
|
summary: IDE interface for ruby-debug.
|