pry-rescue 0.14 → 0.15
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.rb +2 -0
- data/lib/pry-rescue/core_ext.rb +2 -1
- data/pry-rescue.gemspec +1 -1
- data/spec/core_ext_spec.rb +3 -1
- data/spec/pry_rescue_spec.rb +6 -0
- metadata +14 -14
data/lib/pry-rescue.rb
CHANGED
@@ -104,6 +104,8 @@ class PryRescue
|
|
104
104
|
# @param [String] file the absolute path
|
105
105
|
# @return [Boolean]
|
106
106
|
def user_path?(file)
|
107
|
+
return false if file.match(%r(/vendor/))
|
108
|
+
return true if file.match(Dir.pwd)
|
107
109
|
!file.start_with?(RbConfig::CONFIG['libdir']) &&
|
108
110
|
!gem_path?(file) &&
|
109
111
|
!%w( (eval) <internal:prelude> ).include?(file)
|
data/lib/pry-rescue/core_ext.rb
CHANGED
@@ -37,7 +37,8 @@ class << Pry
|
|
37
37
|
if i = (@raised || []).index{ |(ee, _)| ee == e }
|
38
38
|
PryRescue.enter_exception_context(@raised[0..i])
|
39
39
|
else
|
40
|
-
stack =
|
40
|
+
stack = ''
|
41
|
+
stack = "\n" + e.backtrace.join("\n") if e.backtrace
|
41
42
|
case e
|
42
43
|
when SystemStackError
|
43
44
|
# Interception cannot reliably interept SystemStackErrors as it needs
|
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.
|
3
|
+
s.version = '0.15'
|
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
@@ -107,7 +107,9 @@ describe "Pry.rescued" do
|
|
107
107
|
|
108
108
|
it "should raise an error if used on an exception not raised" do
|
109
109
|
Pry::rescue do
|
110
|
-
Pry.should_receive(:warn)
|
110
|
+
Pry.should_receive(:warn) do |message|
|
111
|
+
message.should =~ /^WARNING: Tried to inspect exception outside of Pry::rescue/
|
112
|
+
end
|
111
113
|
Pry.rescued(RuntimeError.new("foo").exception)
|
112
114
|
end
|
113
115
|
end
|
data/spec/pry_rescue_spec.rb
CHANGED
@@ -52,6 +52,12 @@ describe "PryRescue.load" do
|
|
52
52
|
}.should raise_error(ArgumentError)
|
53
53
|
end
|
54
54
|
|
55
|
+
it "should skip pwd, even if it is a gem (but not vendor stuff)" do
|
56
|
+
Gem::Specification.stub :any? do true end
|
57
|
+
PryRescue.send(:user_path?, Dir.pwd + '/asdf.rb').should be_true
|
58
|
+
PryRescue.send(:user_path?, Dir.pwd + '/vendor/asdf.rb').should be_false
|
59
|
+
end
|
60
|
+
|
55
61
|
it "should filter out duplicate stack frames" do
|
56
62
|
PryRescue.should_receive(:pry).once do |opts|
|
57
63
|
opts[:call_stack][0].eval("__LINE__").should == 4
|
metadata
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pry-rescue
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
version: '0.15'
|
4
5
|
prerelease:
|
5
|
-
version: '0.14'
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Conrad Irwin
|
@@ -11,16 +11,17 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date: 2013-01-
|
14
|
+
date: 2013-01-07 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
|
-
|
17
|
+
name: pry
|
18
18
|
requirement: !ruby/object:Gem::Requirement
|
19
19
|
none: false
|
20
20
|
requirements:
|
21
21
|
- - ! '>='
|
22
22
|
- !ruby/object:Gem::Version
|
23
23
|
version: '0'
|
24
|
+
type: :runtime
|
24
25
|
prerelease: false
|
25
26
|
version_requirements: !ruby/object:Gem::Requirement
|
26
27
|
none: false
|
@@ -28,15 +29,15 @@ dependencies:
|
|
28
29
|
- - ! '>='
|
29
30
|
- !ruby/object:Gem::Version
|
30
31
|
version: '0'
|
31
|
-
name: pry
|
32
32
|
- !ruby/object:Gem::Dependency
|
33
|
-
|
33
|
+
name: interception
|
34
34
|
requirement: !ruby/object:Gem::Requirement
|
35
35
|
none: false
|
36
36
|
requirements:
|
37
37
|
- - ! '>='
|
38
38
|
- !ruby/object:Gem::Version
|
39
39
|
version: '0.3'
|
40
|
+
type: :runtime
|
40
41
|
prerelease: false
|
41
42
|
version_requirements: !ruby/object:Gem::Requirement
|
42
43
|
none: false
|
@@ -44,15 +45,15 @@ dependencies:
|
|
44
45
|
- - ! '>='
|
45
46
|
- !ruby/object:Gem::Version
|
46
47
|
version: '0.3'
|
47
|
-
name: interception
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
|
-
|
49
|
+
name: pry-stack_explorer
|
50
50
|
requirement: !ruby/object:Gem::Requirement
|
51
51
|
none: false
|
52
52
|
requirements:
|
53
53
|
- - ! '>='
|
54
54
|
- !ruby/object:Gem::Version
|
55
55
|
version: '0'
|
56
|
+
type: :development
|
56
57
|
prerelease: false
|
57
58
|
version_requirements: !ruby/object:Gem::Requirement
|
58
59
|
none: false
|
@@ -60,15 +61,15 @@ dependencies:
|
|
60
61
|
- - ! '>='
|
61
62
|
- !ruby/object:Gem::Version
|
62
63
|
version: '0'
|
63
|
-
name: pry-stack_explorer
|
64
64
|
- !ruby/object:Gem::Dependency
|
65
|
-
|
65
|
+
name: rspec
|
66
66
|
requirement: !ruby/object:Gem::Requirement
|
67
67
|
none: false
|
68
68
|
requirements:
|
69
69
|
- - ! '>='
|
70
70
|
- !ruby/object:Gem::Version
|
71
71
|
version: '0'
|
72
|
+
type: :development
|
72
73
|
prerelease: false
|
73
74
|
version_requirements: !ruby/object:Gem::Requirement
|
74
75
|
none: false
|
@@ -76,15 +77,15 @@ dependencies:
|
|
76
77
|
- - ! '>='
|
77
78
|
- !ruby/object:Gem::Version
|
78
79
|
version: '0'
|
79
|
-
name: rspec
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
|
-
|
81
|
+
name: yard
|
82
82
|
requirement: !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ! '>='
|
86
86
|
- !ruby/object:Gem::Version
|
87
87
|
version: '0'
|
88
|
+
type: :development
|
88
89
|
prerelease: false
|
89
90
|
version_requirements: !ruby/object:Gem::Requirement
|
90
91
|
none: false
|
@@ -92,15 +93,15 @@ dependencies:
|
|
92
93
|
- - ! '>='
|
93
94
|
- !ruby/object:Gem::Version
|
94
95
|
version: '0'
|
95
|
-
name: yard
|
96
96
|
- !ruby/object:Gem::Dependency
|
97
|
-
|
97
|
+
name: redcarpet
|
98
98
|
requirement: !ruby/object:Gem::Requirement
|
99
99
|
none: false
|
100
100
|
requirements:
|
101
101
|
- - ! '>='
|
102
102
|
- !ruby/object:Gem::Version
|
103
103
|
version: '0'
|
104
|
+
type: :development
|
104
105
|
prerelease: false
|
105
106
|
version_requirements: !ruby/object:Gem::Requirement
|
106
107
|
none: false
|
@@ -108,7 +109,6 @@ dependencies:
|
|
108
109
|
- - ! '>='
|
109
110
|
- !ruby/object:Gem::Version
|
110
111
|
version: '0'
|
111
|
-
name: redcarpet
|
112
112
|
description: Allows you to wrap code in Pry::rescue{ } to open a pry session at any
|
113
113
|
unhandled exceptions
|
114
114
|
email:
|