better_errors 2.3.0 → 2.4.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.
Potentially problematic release.
This version of better_errors might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.coveralls.yml +1 -0
- data/.gitignore +3 -0
- data/.travis.yml +64 -5
- data/Gemfile +1 -8
- data/README.md +44 -1
- data/better_errors.gemspec +6 -0
- data/gemfiles/pry010.gemfile +9 -0
- data/gemfiles/pry011.gemfile +8 -0
- data/gemfiles/pry09.gemfile +8 -0
- data/gemfiles/rack.gemfile +7 -0
- data/gemfiles/rack_boc.gemfile +8 -0
- data/gemfiles/rails42.gemfile +8 -0
- data/gemfiles/rails42_boc.gemfile +9 -0
- data/gemfiles/rails42_haml.gemfile +9 -0
- data/gemfiles/rails50.gemfile +7 -0
- data/gemfiles/rails50_boc.gemfile +8 -0
- data/gemfiles/rails50_haml.gemfile +8 -0
- data/gemfiles/rails51.gemfile +7 -0
- data/gemfiles/rails51_boc.gemfile +8 -0
- data/gemfiles/rails51_haml.gemfile +8 -0
- data/lib/better_errors.rb +8 -0
- data/lib/better_errors/error_page.rb +20 -3
- data/lib/better_errors/middleware.rb +9 -3
- data/lib/better_errors/templates/main.erb +19 -18
- data/lib/better_errors/templates/variable_info.erb +3 -3
- data/lib/better_errors/version.rb +1 -1
- metadata +88 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 27b27931ec5b8e074bac10e095d6c842dbeab9fc
|
4
|
+
data.tar.gz: b7631911ff716069a371bf30b060241c08d4916d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cb6451b31dd661e6c966411814522e2c06bc9e19070468b91cdb2f3b46f0160e2ccdd8d38aac0c4ce1e5d83b894aa01478a8b6ddecbb2ff3123cc3b901f29aaf
|
7
|
+
data.tar.gz: ea83fb1c88433f2f3df9cd7794996896d05956893bde09772b9bc85d4c12e63640162d860660b7ede93c7fbe393ed89611e20c77a1d99e1bf18f41a5c6f00a9f
|
data/.coveralls.yml
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
service_name: travis-ci
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
@@ -1,9 +1,68 @@
|
|
1
1
|
sudo: false
|
2
2
|
language: ruby
|
3
3
|
cache: bundler
|
4
|
+
notifications:
|
5
|
+
webhooks:
|
6
|
+
# With COVERALLS_PARALLEL, coverage information sent to coveralls will not be processed until
|
7
|
+
# this webhook is sent.
|
8
|
+
# https://coveralls.zendesk.com/hc/en-us/articles/203484329-Parallel-Build-Webhook
|
9
|
+
- secure: "YnHYbTq51ySistjvOxsuNhyg4GLuUffEJstTYeGYXiBF7HG5h43IVYo8KNuLzwkgsOYBcNo+YMdQX7qCqJffSbhsr1FZRSzBmjFFxcyD4hu+ukM2theZ4mePVAZiePscYvQPRNY4hIb4d3egStJEytkalDhB3sOebF57tIaCssg="
|
4
10
|
rvm:
|
5
|
-
- 2.0
|
6
|
-
- 2.1
|
7
|
-
- 2.2
|
8
|
-
- 2.3
|
9
|
-
- 2.4
|
11
|
+
- 2.0.0
|
12
|
+
- 2.1.10
|
13
|
+
- 2.2.7
|
14
|
+
- 2.3.4
|
15
|
+
- 2.4.1
|
16
|
+
- ruby-head
|
17
|
+
gemfile:
|
18
|
+
- gemfiles/rails42.gemfile
|
19
|
+
- gemfiles/rails50.gemfile
|
20
|
+
- gemfiles/rails51.gemfile
|
21
|
+
- gemfiles/rails42_haml.gemfile
|
22
|
+
- gemfiles/rails50_haml.gemfile
|
23
|
+
- gemfiles/rails51_haml.gemfile
|
24
|
+
- gemfiles/rails42_boc.gemfile
|
25
|
+
- gemfiles/rails50_boc.gemfile
|
26
|
+
- gemfiles/rails51_boc.gemfile
|
27
|
+
- gemfiles/rack.gemfile
|
28
|
+
- gemfiles/rack_boc.gemfile
|
29
|
+
- gemfiles/pry09.gemfile
|
30
|
+
- gemfiles/pry010.gemfile
|
31
|
+
- gemfiles/pry011.gemfile
|
32
|
+
matrix:
|
33
|
+
fast_finish: true
|
34
|
+
allow_failures:
|
35
|
+
- rvm: ruby-head
|
36
|
+
- gemfile: gemfiles/pry010.gemfile
|
37
|
+
- gemfile: gemfiles/pry011.gemfile
|
38
|
+
exclude:
|
39
|
+
- rvm: 2.0.0
|
40
|
+
gemfile: gemfiles/rails50.gemfile
|
41
|
+
- rvm: 2.0.0
|
42
|
+
gemfile: gemfiles/rails50_boc.gemfile
|
43
|
+
- rvm: 2.0.0
|
44
|
+
gemfile: gemfiles/rails50_haml.gemfile
|
45
|
+
- rvm: 2.0.0
|
46
|
+
gemfile: gemfiles/rails51.gemfile
|
47
|
+
- rvm: 2.0.0
|
48
|
+
gemfile: gemfiles/rails51_boc.gemfile
|
49
|
+
- rvm: 2.0.0
|
50
|
+
gemfile: gemfiles/rails51_haml.gemfile
|
51
|
+
- rvm: 2.1.10
|
52
|
+
gemfile: gemfiles/rails50.gemfile
|
53
|
+
- rvm: 2.1.10
|
54
|
+
gemfile: gemfiles/rails50_boc.gemfile
|
55
|
+
- rvm: 2.1.10
|
56
|
+
gemfile: gemfiles/rails50_haml.gemfile
|
57
|
+
- rvm: 2.1.10
|
58
|
+
gemfile: gemfiles/rails51.gemfile
|
59
|
+
- rvm: 2.1.10
|
60
|
+
gemfile: gemfiles/rails51_boc.gemfile
|
61
|
+
- rvm: 2.1.10
|
62
|
+
gemfile: gemfiles/rails51_haml.gemfile
|
63
|
+
- rvm: 2.4.1
|
64
|
+
gemfile: gemfiles/rails42.gemfile
|
65
|
+
- rvm: 2.4.1
|
66
|
+
gemfile: gemfiles/rails42_boc.gemfile
|
67
|
+
- rvm: 2.4.1
|
68
|
+
gemfile: gemfiles/rails42_haml.gemfile
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -1,4 +1,9 @@
|
|
1
|
-
|
1
|
+
[](https://travis-ci.org/charliesome/better_errors)
|
2
|
+
[](https://codeclimate.com/github/charliesome/better_errors)
|
3
|
+
[](https://coveralls.io/github/charliesome/better_errors?branch=master)
|
4
|
+
[](https://rubygems.org/gems/better_errors)
|
5
|
+
|
6
|
+
# Better Errors
|
2
7
|
|
3
8
|
Better Errors replaces the standard Rails error page with a much better and more useful error page. It is also usable outside of Rails in any Rack app as Rack middleware.
|
4
9
|
|
@@ -75,10 +80,48 @@ Better Errors includes a link to your editor for the file and line of code that
|
|
75
80
|
By default, it uses your environment to determine which editor should be opened.
|
76
81
|
See [the wiki for instructions on configuring the editor](https://github.com/charliesome/better_errors/wiki/Link-to-your-editor).
|
77
82
|
|
83
|
+
|
84
|
+
## Set maximum variable size for inspector.
|
85
|
+
|
86
|
+
```ruby
|
87
|
+
# e.g. in config/initializers/better_errors.rb
|
88
|
+
# This will stop BetterErrors from trying to render larger objects, which can cause
|
89
|
+
# slow loading times and browser performance problems. Stated size is in characters and refers
|
90
|
+
# to the length of #inspect's payload for the given object. Please be aware that HTML escaping
|
91
|
+
# modifies the size of this payload so setting this limit too precisely is not recommended.
|
92
|
+
# default value: 100_000
|
93
|
+
BetterErrors.maximum_variable_inspect_size = 100_000
|
94
|
+
```
|
95
|
+
|
96
|
+
|
78
97
|
## Get in touch!
|
79
98
|
|
80
99
|
If you're using better_errors, I'd love to hear from you. Drop me a line and tell me what you think!
|
81
100
|
|
101
|
+
## Development
|
102
|
+
|
103
|
+
After checking out the repo, run `bundle install` to install the basic dependencies.
|
104
|
+
|
105
|
+
You can run the tests with the simplest set of dependencies using:
|
106
|
+
|
107
|
+
```rb
|
108
|
+
bundle exec rspec
|
109
|
+
```
|
110
|
+
|
111
|
+
To run specs for each of the dependency combinations, run:
|
112
|
+
|
113
|
+
```rb
|
114
|
+
bundle exec rake test:all
|
115
|
+
```
|
116
|
+
|
117
|
+
You can run specs for a specific dependency combination using:
|
118
|
+
|
119
|
+
```rb
|
120
|
+
BUNDLE_GEMFILE=gemfiles/pry09.gemfile bundle exec rspec
|
121
|
+
```
|
122
|
+
|
123
|
+
On CI, the specs are run against each gemfile on each supported version of Ruby.
|
124
|
+
|
82
125
|
## Contributing
|
83
126
|
|
84
127
|
1. Fork it
|
data/better_errors.gemspec
CHANGED
@@ -20,6 +20,12 @@ Gem::Specification.new do |s|
|
|
20
20
|
|
21
21
|
s.required_ruby_version = ">= 2.0.0"
|
22
22
|
|
23
|
+
s.add_development_dependency "rake", "~> 10.0"
|
24
|
+
s.add_development_dependency "rspec", "~> 3.5"
|
25
|
+
s.add_development_dependency "rspec-its"
|
26
|
+
s.add_development_dependency "yard"
|
27
|
+
s.add_development_dependency "kramdown"
|
28
|
+
|
23
29
|
s.add_dependency "erubi", ">= 1.0.0"
|
24
30
|
s.add_dependency "coderay", ">= 1.0.0"
|
25
31
|
s.add_dependency "rack", ">= 0.9.0"
|
data/lib/better_errors.rb
CHANGED
@@ -17,6 +17,8 @@ module BetterErrors
|
|
17
17
|
{ symbols: [:macvim, :mvim], sniff: /vim/i, url: proc { |file, line| "mvim://open?url=file://#{file}&line=#{line}" } },
|
18
18
|
{ symbols: [:sublime, :subl, :st], sniff: /subl/i, url: "subl://open?url=file://%{file}&line=%{line}" },
|
19
19
|
{ symbols: [:textmate, :txmt, :tm], sniff: /mate/i, url: "txmt://open?url=file://%{file}&line=%{line}" },
|
20
|
+
{ symbols: [:idea], sniff: /idea/i, url: "idea://open?file=%{file}&line=%{line}" },
|
21
|
+
{ symbols: [:rubymine], sniff: /mine/i, url: "x-mine://open?file=%{file}&line=%{line}" },
|
20
22
|
]
|
21
23
|
|
22
24
|
class << self
|
@@ -44,8 +46,14 @@ module BetterErrors
|
|
44
46
|
# The ignored instance variables.
|
45
47
|
# @return [Array]
|
46
48
|
attr_accessor :ignored_instance_variables
|
49
|
+
|
50
|
+
# The maximum variable payload size. If variable.inspect exceeds this,
|
51
|
+
# the variable won't be returned.
|
52
|
+
# @return int
|
53
|
+
attr_accessor :maximum_variable_inspect_size
|
47
54
|
end
|
48
55
|
@ignored_instance_variables = []
|
56
|
+
@maximum_variable_inspect_size = 100_000
|
49
57
|
|
50
58
|
# Returns a proc, which when called with a filename and line number argument,
|
51
59
|
# returns a URL to open the filename and line in the selected editor.
|
@@ -104,11 +104,28 @@ module BetterErrors
|
|
104
104
|
end
|
105
105
|
|
106
106
|
def inspect_value(obj)
|
107
|
-
|
107
|
+
inspect_raw_value(obj)
|
108
108
|
rescue NoMethodError
|
109
109
|
"<span class='unsupported'>(object doesn't support inspect)</span>"
|
110
|
-
rescue Exception
|
111
|
-
"<span class='unsupported'>(exception was raised in inspect)</span>"
|
110
|
+
rescue Exception => e
|
111
|
+
"<span class='unsupported'>(exception #{CGI.escapeHTML(e.class.to_s)} was raised in inspect)</span>"
|
112
|
+
end
|
113
|
+
|
114
|
+
def inspect_raw_value(obj)
|
115
|
+
value = CGI.escapeHTML(obj.inspect)
|
116
|
+
|
117
|
+
if value_small_enough_to_inspect?(value)
|
118
|
+
value
|
119
|
+
else
|
120
|
+
"<span class='unsupported'>(object too large. "\
|
121
|
+
"Modify #{CGI.escapeHTML(obj.class.to_s)}#inspect "\
|
122
|
+
"or increase BetterErrors.maximum_variable_inspect_size)</span>"
|
123
|
+
end
|
124
|
+
end
|
125
|
+
|
126
|
+
def value_small_enough_to_inspect?(value)
|
127
|
+
return true if BetterErrors.maximum_variable_inspect_size.nil?
|
128
|
+
value.length <= BetterErrors.maximum_variable_inspect_size
|
112
129
|
end
|
113
130
|
|
114
131
|
def eval_and_respond(index, code)
|
@@ -116,13 +116,19 @@ module BetterErrors
|
|
116
116
|
return unless BetterErrors.logger
|
117
117
|
|
118
118
|
message = "\n#{@error_page.exception_type} - #{@error_page.exception_message}:\n"
|
119
|
-
|
120
|
-
message << " #{frame}\n"
|
121
|
-
end
|
119
|
+
message += backtrace_frames.map { |frame| " #{frame}\n" }.join
|
122
120
|
|
123
121
|
BetterErrors.logger.fatal message
|
124
122
|
end
|
125
123
|
|
124
|
+
def backtrace_frames
|
125
|
+
if defined?(Rails) && defined?(Rails.backtrace_cleaner)
|
126
|
+
Rails.backtrace_cleaner.clean @error_page.backtrace_frames.map(&:to_s)
|
127
|
+
else
|
128
|
+
@error_page.backtrace_frames
|
129
|
+
end
|
130
|
+
end
|
131
|
+
|
126
132
|
def internal_call(env, opts)
|
127
133
|
return no_errors_json_response unless @error_page
|
128
134
|
return invalid_error_json_response if opts[:id] != @error_page.id
|
@@ -394,7 +394,7 @@
|
|
394
394
|
* Monospace
|
395
395
|
* --------------------------------------------------------------------- */
|
396
396
|
|
397
|
-
pre, code, .repl input, .repl .
|
397
|
+
pre, code, .be-repl input, .be-repl .command-line span, textarea, .code_linenums {
|
398
398
|
font-family: menlo, lucida console, monospace;
|
399
399
|
font-size: 8pt;
|
400
400
|
}
|
@@ -460,7 +460,7 @@
|
|
460
460
|
font-weight: 200;
|
461
461
|
}
|
462
462
|
|
463
|
-
.code, .console, .unavailable {
|
463
|
+
.code, .be-console, .unavailable {
|
464
464
|
background: #fff;
|
465
465
|
padding: 5px;
|
466
466
|
|
@@ -532,13 +532,13 @@
|
|
532
532
|
}
|
533
533
|
|
534
534
|
/* REPL shell */
|
535
|
-
.console {
|
535
|
+
.be-console {
|
536
536
|
padding: 0 1px 10px 1px;
|
537
537
|
border-bottom-left-radius: 2px;
|
538
538
|
border-bottom-right-radius: 2px;
|
539
539
|
}
|
540
540
|
|
541
|
-
.console pre {
|
541
|
+
.be-console pre {
|
542
542
|
padding: 10px 10px 0 10px;
|
543
543
|
max-height: 400px;
|
544
544
|
overflow-x: none;
|
@@ -548,30 +548,31 @@
|
|
548
548
|
white-space: pre-wrap;
|
549
549
|
}
|
550
550
|
|
551
|
-
/* .
|
552
|
-
.console .
|
551
|
+
/* .command-line > span + input */
|
552
|
+
.be-console .command-line {
|
553
553
|
display: table;
|
554
554
|
width: 100%;
|
555
555
|
}
|
556
556
|
|
557
|
-
.console .
|
558
|
-
.console .
|
557
|
+
.be-console .command-line span,
|
558
|
+
.be-console .command-line input {
|
559
559
|
display: table-cell;
|
560
560
|
}
|
561
561
|
|
562
|
-
.console .
|
562
|
+
.be-console .command-line span {
|
563
563
|
width: 1%;
|
564
564
|
padding-right: 5px;
|
565
565
|
padding-left: 10px;
|
566
|
+
white-space: pre;
|
566
567
|
}
|
567
568
|
|
568
|
-
.console .
|
569
|
+
.be-console .command-line input {
|
569
570
|
width: 99%;
|
570
571
|
}
|
571
572
|
|
572
573
|
/* Input box */
|
573
|
-
.console input,
|
574
|
-
.console input:focus {
|
574
|
+
.be-console input,
|
575
|
+
.be-console input:focus {
|
575
576
|
outline: 0;
|
576
577
|
border: 0;
|
577
578
|
padding: 0;
|
@@ -669,14 +670,14 @@
|
|
669
670
|
|
670
671
|
nav.sidebar::-webkit-scrollbar,
|
671
672
|
.inset pre::-webkit-scrollbar,
|
672
|
-
.console pre::-webkit-scrollbar,
|
673
|
+
.be-console pre::-webkit-scrollbar,
|
673
674
|
.code::-webkit-scrollbar {
|
674
675
|
width: 10px;
|
675
676
|
height: 10px;
|
676
677
|
}
|
677
678
|
|
678
679
|
.inset pre::-webkit-scrollbar-thumb,
|
679
|
-
.console pre::-webkit-scrollbar-thumb,
|
680
|
+
.be-console pre::-webkit-scrollbar-thumb,
|
680
681
|
.code::-webkit-scrollbar-thumb {
|
681
682
|
background: #ccc;
|
682
683
|
border-radius: 5px;
|
@@ -692,7 +693,7 @@
|
|
692
693
|
background: -webkit-linear-gradient(left, #aaa, #999);
|
693
694
|
}
|
694
695
|
|
695
|
-
.console pre:hover::-webkit-scrollbar-thumb,
|
696
|
+
.be-console pre:hover::-webkit-scrollbar-thumb,
|
696
697
|
.inset pre:hover::-webkit-scrollbar-thumb,
|
697
698
|
.code:hover::-webkit-scrollbar-thumb {
|
698
699
|
background: #888;
|
@@ -809,7 +810,7 @@
|
|
809
810
|
REPL.prototype.install = function(containerElement) {
|
810
811
|
this.container = containerElement;
|
811
812
|
|
812
|
-
this.promptElement = this.container.querySelector(".prompt
|
813
|
+
this.promptElement = this.container.querySelector(".command-line .prompt");
|
813
814
|
this.inputElement = this.container.querySelector("input");
|
814
815
|
this.outputElement = this.container.querySelector("pre");
|
815
816
|
|
@@ -924,7 +925,7 @@
|
|
924
925
|
|
925
926
|
el.style.display = "block";
|
926
927
|
|
927
|
-
var replInput = el.querySelector('.console input');
|
928
|
+
var replInput = el.querySelector('.be-console input');
|
928
929
|
if (replInput) replInput.focus();
|
929
930
|
}
|
930
931
|
|
@@ -946,7 +947,7 @@
|
|
946
947
|
} else {
|
947
948
|
el.innerHTML = response.html;
|
948
949
|
|
949
|
-
var repl = el.querySelector(".repl .console");
|
950
|
+
var repl = el.querySelector(".be-repl .be-console");
|
950
951
|
if(repl) {
|
951
952
|
new REPL(index).install(repl);
|
952
953
|
}
|
@@ -8,10 +8,10 @@
|
|
8
8
|
</div>
|
9
9
|
|
10
10
|
<% if BetterErrors.binding_of_caller_available? && @frame.frame_binding %>
|
11
|
-
<div class="repl">
|
12
|
-
<div class="console">
|
11
|
+
<div class="be-repl">
|
12
|
+
<div class="be-console">
|
13
13
|
<pre></pre>
|
14
|
-
<div class="
|
14
|
+
<div class="command-line"><span class='prompt'>>></span> <input tabindex="1"/></div>
|
15
15
|
</div>
|
16
16
|
</div>
|
17
17
|
<% end %>
|
metadata
CHANGED
@@ -1,15 +1,85 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: better_errors
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Charlie Somerville
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-10-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: rake
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '10.0'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '10.0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rspec
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '3.5'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '3.5'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: rspec-its
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: yard
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: kramdown
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
13
83
|
- !ruby/object:Gem::Dependency
|
14
84
|
name: erubi
|
15
85
|
requirement: !ruby/object:Gem::Requirement
|
@@ -61,6 +131,7 @@ executables: []
|
|
61
131
|
extensions: []
|
62
132
|
extra_rdoc_files: []
|
63
133
|
files:
|
134
|
+
- ".coveralls.yml"
|
64
135
|
- ".gitignore"
|
65
136
|
- ".travis.yml"
|
66
137
|
- ".yardopts"
|
@@ -69,6 +140,20 @@ files:
|
|
69
140
|
- LICENSE.txt
|
70
141
|
- README.md
|
71
142
|
- better_errors.gemspec
|
143
|
+
- gemfiles/pry010.gemfile
|
144
|
+
- gemfiles/pry011.gemfile
|
145
|
+
- gemfiles/pry09.gemfile
|
146
|
+
- gemfiles/rack.gemfile
|
147
|
+
- gemfiles/rack_boc.gemfile
|
148
|
+
- gemfiles/rails42.gemfile
|
149
|
+
- gemfiles/rails42_boc.gemfile
|
150
|
+
- gemfiles/rails42_haml.gemfile
|
151
|
+
- gemfiles/rails50.gemfile
|
152
|
+
- gemfiles/rails50_boc.gemfile
|
153
|
+
- gemfiles/rails50_haml.gemfile
|
154
|
+
- gemfiles/rails51.gemfile
|
155
|
+
- gemfiles/rails51_boc.gemfile
|
156
|
+
- gemfiles/rails51_haml.gemfile
|
72
157
|
- lib/better_errors.rb
|
73
158
|
- lib/better_errors/code_formatter.rb
|
74
159
|
- lib/better_errors/code_formatter/html.rb
|
@@ -106,7 +191,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
106
191
|
version: '0'
|
107
192
|
requirements: []
|
108
193
|
rubyforge_project:
|
109
|
-
rubygems_version: 2.6.
|
194
|
+
rubygems_version: 2.6.13
|
110
195
|
signing_key:
|
111
196
|
specification_version: 4
|
112
197
|
summary: Better error page for Rails and other Rack apps
|