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.
@@ -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
- raise "Tried to inspect an exception that was not raised in a Pry::rescue{ } block"
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'
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'
@@ -100,17 +100,15 @@ describe "Pry.rescued" do
100
100
  begin
101
101
  raise "foo"
102
102
  rescue => e
103
- lambda{
104
- Pry.rescued(e)
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
- lambda{
112
- Pry.rescued(RuntimeError.new("foo").exception)
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
- prerelease: true
5
- segments:
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
- date: 2012-10-23 00:00:00 -07:00
21
- default_executable:
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
- prerelease: false
26
- requirement: &id001 !ruby/object:Gem::Requirement
27
- requirements:
28
- - - ">="
29
- - !ruby/object:Gem::Version
30
- segments:
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
- requirement: &id002 !ruby/object:Gem::Requirement
39
- requirements:
40
- - - ">="
41
- - !ruby/object:Gem::Version
42
- segments:
43
- - 0
44
- - 3
45
- version: "0.3"
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
- requirement: &id003 !ruby/object:Gem::Requirement
52
- requirements:
53
- - - ">="
54
- - !ruby/object:Gem::Version
55
- segments:
56
- - 0
57
- version: "0"
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
- requirement: &id004 !ruby/object:Gem::Requirement
64
- requirements:
65
- - - ">="
66
- - !ruby/object:Gem::Version
67
- segments:
68
- - 0
69
- version: "0"
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
- requirement: &id005 !ruby/object:Gem::Requirement
76
- requirements:
77
- - - ">="
78
- - !ruby/object:Gem::Version
79
- segments:
80
- - 0
81
- version: "0"
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
- version_requirements: *id005
84
- description: Allows you to wrap code in Pry::rescue{ } to open a pry session at any unhandled exceptions
85
- email:
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
- requirements:
145
- - - ">="
146
- - !ruby/object:Gem::Version
147
- segments:
148
- - 0
149
- version: "0"
150
- required_rubygems_version: !ruby/object:Gem::Requirement
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.3.6
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: