pry-rescue 0.13.pre.3 → 0.13.pre.4
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/pry-rescue/core_ext.rb +16 -1
- data/pry-rescue.gemspec +1 -1
- data/spec/core_ext_spec.rb +4 -6
- metadata +96 -93
data/lib/pry-rescue/core_ext.rb
CHANGED
@@ -37,7 +37,22 @@ class << Pry
|
|
37
37
|
if i = (@raised || []).index{ |(ee, _)| ee == e }
|
38
38
|
PryRescue.enter_exception_context(@raised[0..i])
|
39
39
|
else
|
40
|
-
|
40
|
+
case e
|
41
|
+
when SystemStackError
|
42
|
+
# Interception cannot reliably interept SystemStackErrors as it needs
|
43
|
+
# to call a function at the point the stack runs out.
|
44
|
+
# We use a special error message here, as it seems nicer to assume that
|
45
|
+
# the user knows what they are doing, and it's the software that's
|
46
|
+
# terrible.
|
47
|
+
warn "WARNING: Insufficient stack space to inspect exception"
|
48
|
+
else
|
49
|
+
# We used to raise an exception at this point, but that turned out to
|
50
|
+
# not be very helpful as it obscured the original cause of the problem.
|
51
|
+
# I considered adding an explicit 'raise e' here, but decided against
|
52
|
+
# it on the grounds that the Pry::rescued call is normally in someone
|
53
|
+
# else's error handler already.
|
54
|
+
warn "WARNING: Tried to inspect an exception that was not raised within Pry::rescue{ }"
|
55
|
+
end
|
41
56
|
end
|
42
57
|
|
43
58
|
ensure
|
data/pry-rescue.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |s|
|
2
2
|
s.name = 'pry-rescue'
|
3
|
-
s.version = '0.13.pre.
|
3
|
+
s.version = '0.13.pre.4'
|
4
4
|
s.summary = 'Open a pry session on any unhandled exceptions'
|
5
5
|
s.description = 'Allows you to wrap code in Pry::rescue{ } to open a pry session at any unhandled exceptions'
|
6
6
|
s.homepage = 'https://github.com/ConradIrwin/pry-rescue'
|
data/spec/core_ext_spec.rb
CHANGED
@@ -100,17 +100,15 @@ describe "Pry.rescued" do
|
|
100
100
|
begin
|
101
101
|
raise "foo"
|
102
102
|
rescue => e
|
103
|
-
|
104
|
-
|
105
|
-
}.should raise_error(/Pry::rescue/)
|
103
|
+
Pry.should_receive(:warn)
|
104
|
+
Pry.rescued(e)
|
106
105
|
end
|
107
106
|
end
|
108
107
|
|
109
108
|
it "should raise an error if used on an exception not raised" do
|
110
109
|
Pry::rescue do
|
111
|
-
|
112
|
-
|
113
|
-
}.should raise_error(/not raised/)
|
110
|
+
Pry.should_receive(:warn).with("WARNING: Tried to inspect an exception that was not raised within Pry::rescue{ }")
|
111
|
+
Pry.rescued(RuntimeError.new("foo").exception)
|
114
112
|
end
|
115
113
|
end
|
116
114
|
|
metadata
CHANGED
@@ -1,98 +1,109 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: pry-rescue
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
|
6
|
-
- 0
|
7
|
-
- 13
|
8
|
-
- pre
|
9
|
-
- 3
|
10
|
-
version: 0.13.pre.3
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.13.pre.4
|
5
|
+
prerelease: 5
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
7
|
+
authors:
|
13
8
|
- Conrad Irwin
|
14
9
|
- banisterfiend
|
15
10
|
- epitron
|
16
11
|
autorequire:
|
17
12
|
bindir: bin
|
18
13
|
cert_chain: []
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
dependencies:
|
23
|
-
- !ruby/object:Gem::Dependency
|
14
|
+
date: 2012-10-31 00:00:00.000000000 Z
|
15
|
+
dependencies:
|
16
|
+
- !ruby/object:Gem::Dependency
|
24
17
|
name: pry
|
25
|
-
|
26
|
-
|
27
|
-
requirements:
|
28
|
-
- -
|
29
|
-
- !ruby/object:Gem::Version
|
30
|
-
|
31
|
-
- 0
|
32
|
-
version: "0"
|
18
|
+
requirement: !ruby/object:Gem::Requirement
|
19
|
+
none: false
|
20
|
+
requirements:
|
21
|
+
- - ! '>='
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: '0'
|
33
24
|
type: :runtime
|
34
|
-
version_requirements: *id001
|
35
|
-
- !ruby/object:Gem::Dependency
|
36
|
-
name: interception
|
37
25
|
prerelease: false
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
26
|
+
version_requirements: !ruby/object:Gem::Requirement
|
27
|
+
none: false
|
28
|
+
requirements:
|
29
|
+
- - ! '>='
|
30
|
+
- !ruby/object:Gem::Version
|
31
|
+
version: '0'
|
32
|
+
- !ruby/object:Gem::Dependency
|
33
|
+
name: interception
|
34
|
+
requirement: !ruby/object:Gem::Requirement
|
35
|
+
none: false
|
36
|
+
requirements:
|
37
|
+
- - ! '>='
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '0.3'
|
46
40
|
type: :runtime
|
47
|
-
version_requirements: *id002
|
48
|
-
- !ruby/object:Gem::Dependency
|
49
|
-
name: rspec
|
50
41
|
prerelease: false
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
43
|
+
none: false
|
44
|
+
requirements:
|
45
|
+
- - ! '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0.3'
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
name: rspec
|
50
|
+
requirement: !ruby/object:Gem::Requirement
|
51
|
+
none: false
|
52
|
+
requirements:
|
53
|
+
- - ! '>='
|
54
|
+
- !ruby/object:Gem::Version
|
55
|
+
version: '0'
|
58
56
|
type: :development
|
59
|
-
version_requirements: *id003
|
60
|
-
- !ruby/object:Gem::Dependency
|
61
|
-
name: yard
|
62
57
|
prerelease: false
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
58
|
+
version_requirements: !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
60
|
+
requirements:
|
61
|
+
- - ! '>='
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: '0'
|
64
|
+
- !ruby/object:Gem::Dependency
|
65
|
+
name: yard
|
66
|
+
requirement: !ruby/object:Gem::Requirement
|
67
|
+
none: false
|
68
|
+
requirements:
|
69
|
+
- - ! '>='
|
70
|
+
- !ruby/object:Gem::Version
|
71
|
+
version: '0'
|
70
72
|
type: :development
|
71
|
-
version_requirements: *id004
|
72
|
-
- !ruby/object:Gem::Dependency
|
73
|
-
name: redcarpet
|
74
73
|
prerelease: false
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
74
|
+
version_requirements: !ruby/object:Gem::Requirement
|
75
|
+
none: false
|
76
|
+
requirements:
|
77
|
+
- - ! '>='
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: '0'
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: redcarpet
|
82
|
+
requirement: !ruby/object:Gem::Requirement
|
83
|
+
none: false
|
84
|
+
requirements:
|
85
|
+
- - ! '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
82
88
|
type: :development
|
83
|
-
|
84
|
-
|
85
|
-
|
89
|
+
prerelease: false
|
90
|
+
version_requirements: !ruby/object:Gem::Requirement
|
91
|
+
none: false
|
92
|
+
requirements:
|
93
|
+
- - ! '>='
|
94
|
+
- !ruby/object:Gem::Version
|
95
|
+
version: '0'
|
96
|
+
description: Allows you to wrap code in Pry::rescue{ } to open a pry session at any
|
97
|
+
unhandled exceptions
|
98
|
+
email:
|
86
99
|
- conrad.irwin@gmail.com
|
87
100
|
- jrmair@gmail.com
|
88
101
|
- chris@ill-logic.com
|
89
|
-
executables:
|
102
|
+
executables:
|
90
103
|
- rescue
|
91
104
|
extensions: []
|
92
|
-
|
93
105
|
extra_rdoc_files: []
|
94
|
-
|
95
|
-
files:
|
106
|
+
files:
|
96
107
|
- .gitignore
|
97
108
|
- Gemfile
|
98
109
|
- LICENSE.MIT
|
@@ -131,37 +142,29 @@ files:
|
|
131
142
|
- spec/fixtures/uri.rb
|
132
143
|
- spec/peek_spec.rb
|
133
144
|
- spec/pry_rescue_spec.rb
|
134
|
-
has_rdoc: true
|
135
145
|
homepage: https://github.com/ConradIrwin/pry-rescue
|
136
146
|
licenses: []
|
137
|
-
|
138
147
|
post_install_message:
|
139
148
|
rdoc_options: []
|
140
|
-
|
141
|
-
require_paths:
|
149
|
+
require_paths:
|
142
150
|
- lib
|
143
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
requirements:
|
152
|
-
- -
|
153
|
-
- !ruby/object:Gem::Version
|
154
|
-
segments:
|
155
|
-
- 1
|
156
|
-
- 3
|
157
|
-
- 1
|
151
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
152
|
+
none: false
|
153
|
+
requirements:
|
154
|
+
- - ! '>='
|
155
|
+
- !ruby/object:Gem::Version
|
156
|
+
version: '0'
|
157
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
158
|
+
none: false
|
159
|
+
requirements:
|
160
|
+
- - ! '>'
|
161
|
+
- !ruby/object:Gem::Version
|
158
162
|
version: 1.3.1
|
159
163
|
requirements: []
|
160
|
-
|
161
164
|
rubyforge_project:
|
162
|
-
rubygems_version: 1.
|
165
|
+
rubygems_version: 1.8.24
|
163
166
|
signing_key:
|
164
167
|
specification_version: 3
|
165
168
|
summary: Open a pry session on any unhandled exceptions
|
166
169
|
test_files: []
|
167
|
-
|
170
|
+
has_rdoc:
|