better_errors 2.3.0 → 2.4.0
Sign up to get free protection for your applications and to get access to all the features.
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
|
+
[![Build Status](https://travis-ci.org/charliesome/better_errors.svg)](https://travis-ci.org/charliesome/better_errors)
|
2
|
+
[![Code Climate](https://img.shields.io/codeclimate/github/charliesome/better_errors.svg)](https://codeclimate.com/github/charliesome/better_errors)
|
3
|
+
[![Coverage](https://coveralls.io/repos/github/charliesome/better_errors/badge.svg?branch=master)](https://coveralls.io/github/charliesome/better_errors?branch=master)
|
4
|
+
[![Gem Version](https://img.shields.io/gem/v/better_errors.svg)](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
|