exception_handler 0.5.1 → 0.6.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.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -1
  3. data/.travis.yml +4 -4
  4. data/Gemfile +1 -3
  5. data/README.md +111 -98
  6. data/app/assets/images/exception_handler/connect/facebook.png +0 -0
  7. data/app/assets/images/exception_handler/connect/fusion.png +0 -0
  8. data/app/assets/images/exception_handler/connect/linkedin.png +0 -0
  9. data/app/assets/images/exception_handler/connect/twitter.png +0 -0
  10. data/app/assets/images/exception_handler/connect/youtube.png +0 -0
  11. data/app/assets/images/exception_handler/noise.png +0 -0
  12. data/app/assets/images/favicon.ico +0 -0
  13. data/app/assets/stylesheets/exception_handler.css.erb +18 -0
  14. data/app/assets/stylesheets/styles/_base.css.erb +34 -0
  15. data/app/assets/stylesheets/styles/_exception.css.erb +105 -0
  16. data/app/assets/stylesheets/styles/_footer.css.erb +27 -0
  17. data/app/assets/stylesheets/styles/_responsive.css +5 -0
  18. data/app/controllers/exception_handler/exception_controller.rb +28 -33
  19. data/app/mailers/exception_handler/exception_mailer.rb +17 -0
  20. data/app/models/exception_handler/exception.rb +191 -0
  21. data/app/views/exception_handler/exception/show.html.erb +3 -32
  22. data/app/views/exception_handler/mailers/layout.haml +8 -0
  23. data/app/views/exception_handler/mailers/layout.text.erb +1 -0
  24. data/app/views/exception_handler/mailers/new_exception.erb +4 -0
  25. data/app/views/layouts/exception.html.erb +15 -23
  26. data/config/locales/exception_handler.en.yml +13 -0
  27. data/exception_handler.gemspec +61 -16
  28. data/lib/exception_handler.rb +20 -79
  29. data/lib/exception_handler/config.rb +20 -22
  30. data/lib/exception_handler/engine.rb +36 -0
  31. data/lib/generators/exception_handler/migration_generator.rb +28 -10
  32. data/lib/generators/exception_handler/views_generator.rb +5 -5
  33. data/lib/generators/templates/migration.rb.erb +12 -11
  34. metadata +41 -64
  35. data/app/assets/images/exception_handler/close.png +0 -0
  36. data/app/assets/images/exception_handler/home.png +0 -0
  37. data/app/assets/stylesheets/exception_handler/error.css.erb +0 -309
  38. data/app/helpers/exception_handler/application_helper.rb +0 -56
  39. data/app/models/exception_handler/error.rb +0 -14
  40. data/app/services/exception_handler/exception.rb +0 -34
  41. data/config/locales/en.yml +0 -9
  42. data/lib/exception_handler/parse.rb +0 -23
  43. data/lib/exception_handler/parser/data.rb +0 -59
  44. data/lib/exception_handler/parser/ignore.rb +0 -32
  45. data/lib/exception_handler/version.rb +0 -3
  46. data/post_install_message.md +0 -53
  47. data/spec/helpers/exception_handler/application_helper_spec.rb +0 -42
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8c229b37921ac22e8324f72d64e9e3b5278057f3
4
- data.tar.gz: 5e858de7ce25556d18bb5abba14864193e0d1d7b
3
+ metadata.gz: 903930eb3d385e0aa167f5d91ec1a88b90d409d8
4
+ data.tar.gz: 0b6e6612a482de302e39617c012d542370d072c8
5
5
  SHA512:
6
- metadata.gz: af0923ee9aff4299876616cbd7dfda47669b91e77073e80182bc617c86949332229ac152d98ee7604a63f8827df19db216c5851ac8b346a8a280bdb26cd27a4a
7
- data.tar.gz: 6df51af9f68cfaece304c42327487119fe1e4c966e1e7867e2c95c623e1dcf4e2945c627d316b01ec5f679b760b48096b1472b92eddd937bd4d61309a7fe086f
6
+ metadata.gz: 86041fff5b6527c440215b035b186b3ae4bee43b5bc137f14d789cb62b479cea5c34b9a1d211a0fe15cd42efaba158c5ee18e933f8199a66ef2f9d53016864a2
7
+ data.tar.gz: 8b6398f98477f3c5abf0fc2f8610391688bcdaab2ddedbf93d86d91b9415868f54d17efd4a1a834e9e8ee9a15dc3d7f08860c09c451dc340a747f93a2dbf81f6
data/.gitignore CHANGED
@@ -30,4 +30,4 @@ pkg/
30
30
  spec/dummy/db/*.sqlite3
31
31
  spec/dummy/log/*.log
32
32
  spec/dummy/tmp/
33
- spec/dummy/.sass-cache
33
+ spec/dummy/.sass-cache
@@ -1,5 +1,5 @@
1
1
  rvm:
2
- - 1.9.3
3
- - 2.0.0
4
- - 2.1.1
5
- - ruby-head
2
+ - 2.2.4
3
+ - 2.3.1
4
+ - 2.4.0-preview3
5
+ - ruby-head
data/Gemfile CHANGED
@@ -7,9 +7,7 @@ gemspec
7
7
 
8
8
  #For Testing
9
9
  group :test do
10
- gem 'rspec-rails'
11
- gem 'rails'
12
10
  gem 'coveralls', require: false
13
11
  end
14
12
 
15
- ###########################################
13
+ ###########################################
data/README.md CHANGED
@@ -1,46 +1,40 @@
1
- ![Exception Handler](/readme/title.jpg "Exception Handler Logo")
1
+ ![Exception Handler](readme/title.jpg "Exception Handler Logo")
2
2
 
3
3
  <p align="center">
4
- <strong><a href="#user-content-install">Install</a></strong> - <strong><a href="#user-content-config">Config</a></strong> - <strong><a href="#user-content-support">Support</a></strong>
4
+ <font size="4"><strong>Custom 404 & 500 production error pages for Rails 4 & 5.</font></strong>
5
5
  </p>
6
6
 
7
7
  <p align="center">
8
- <a href="http://badge.fury.io/rb/exception_handler"><img src="https://badge.fury.io/rb/exception_handler.svg"></a>
9
- <a href="https://codeclimate.com/github/richpeck/exception_handler"><img src="https://codeclimate.com/github/richpeck/exception_handler.png"></a>
10
- <a href="https://gemnasium.com/richpeck/exception_handler"><img src="https://gemnasium.com/richpeck/exception_handler.svg"></a>
11
- <a href="https://coveralls.io/r/richpeck/exception_handler"><img src="https://coveralls.io/repos/richpeck/exception_handler/badge.png"></a>
12
- <a href="https://travis-ci.org/richpeck/exception_handler"><img src="https://travis-ci.org/richpeck/exception_handler.svg?branch=master"></a>
8
+ <a href="http://badge.fury.io/rb/exception_handler"><img src="https://badge.fury.io/rb/exception_handler.svg" align="absmiddle"></a>
9
+ <a href="http://rubygems.org/richpeck/exception_handler"><img src="http://ruby-gem-downloads-badge.herokuapp.com/exception_handler/0.5.1?type=total&color=brightgreen" align="absmiddle" /></a>
10
+ <a href="https://codeclimate.com/github/richpeck/exception_handler"><img src="https://codeclimate.com/github/richpeck/exception_handler/badges/gpa.svg" align="absmiddle"/></a>
11
+ <a href="https://gemnasium.com/richpeck/exception_handler"><img src="https://gemnasium.com/richpeck/exception_handler.svg" align="absmiddle"></a>
12
+ <a href='https://coveralls.io/github/richpeck/exception_handler?branch=master'><img src='https://coveralls.io/repos/github/richpeck/exception_handler/badge.svg?branch=master' alt='Coverage Status' align="absmiddle" /></a>
13
+ <a href="https://travis-ci.org/richpeck/exception_handler"><img src="https://travis-ci.org/richpeck/exception_handler.svg?branch=master" align="absmiddle"></a>
13
14
  </p>
14
15
 
15
- ----------
16
-
17
- **ExceptionHandler** helps you can create custom **404 & 500 production error pages** *(adapted from [**1**](https://gist.github.com/wojtha/8433843) & [**2**](http://www.sharagoz.com/posts/1-rolling-your-own-exception-handler-in-rails-3))*.
18
-
19
- ![Exceptions_App middleware](/readme/subtitle.jpg)
20
-
21
- **ExceptionHandler** is the *only* production-ready custom error page solution for Rails 4 & 5.
16
+ <p align="center">
17
+ <strong><a href="#user-content-install">Install</a></strong> → <strong><a href="#user-content-config">Setup</a></strong> → <strong><a href="#user-content-support">Support</a></strong>
18
+ </p>
22
19
 
23
20
  ---
24
21
 
25
22
  <p align="center">
26
- <br /><img src="/readme/05_title.png" width="450" /><br/>
27
- <strong>Customize <i>404</i> and <i>500</i> error pages to be branded to your application in production:</strong>
23
+ <img src="readme/version.png" /><br/>
28
24
  </p>
29
25
 
30
26
  <p align="center">
31
- <img src="/readme/check.png" height="22" title="Fully Responsive" align="absmiddle" />&nbsp; <strong>Responsive</strong> &nbsp;
32
- <img src="/readme/check.png" height="22" title="Branded Error Pages" align="absmiddle" />&nbsp; <strong>Branded Error Pages</strong> &nbsp;
33
- <img src="/readme/check.png" height="22" title="Middleware Exception Handling" align="absmiddle" />&nbsp; <strong>Middleware Exception Handling</strong> &nbsp;
34
- <img src="/readme/check.png" height="22" title="Keep Users Informed" align="absmiddle" />&nbsp; <strong>Fully Customizable</strong> &nbsp;
27
+ <img src="readme/check.png" height="22" title="Fully Responsive" align="absmiddle" />&nbsp; <strong>Responsive</strong> &nbsp;
28
+ <img src="readme/check.png" height="22" title="Branded Error Pages" align="absmiddle" />&nbsp; <strong>Branded Error Pages</strong> &nbsp;
29
+ <img src="readme/check.png" height="22" title="Middleware Exception Handling" align="absmiddle" />&nbsp; <strong>Middleware Exception Handling</strong> &nbsp;
30
+ <img src="readme/check.png" height="22" title="Keep Users Informed" align="absmiddle" />&nbsp; <strong>Fully Customizable</strong> &nbsp;
35
31
  </p>
36
32
 
37
33
  <p align="center">
38
- <img src="/readme/branded/1.jpg" width="425" title="Fully Branded Error Pages" /> <img src="/readme/branded/2.jpg" width="425" title="Fully Branded Error Pages" />
39
- <img src="/readme/branded/3.jpg" width="425" title="Fully Branded Error Pages" /> <img src="/readme/branded/4.jpg" width="425" title="Fully Branded Error Pages" />
34
+ <img src="readme/branded/1.jpg" width="425" title="Fully Branded Error Pages" /> <img src="readme/branded/2.jpg" width="425" title="Fully Branded Error Pages" />
35
+ <img src="readme/branded/3.jpg" width="425" title="Fully Branded Error Pages" /> <img src="readme/branded/4.jpg" width="425" title="Fully Branded Error Pages" />
40
36
  </p>
41
37
 
42
- The most feature-rich, stable & effective solution for **custom error pages** in Rails 4 & 5.
43
-
44
38
  ---
45
39
 
46
40
  <p align="center">
@@ -52,17 +46,17 @@ The most feature-rich, stable & effective solution for **custom error pages** in
52
46
  </p>
53
47
 
54
48
  <p align="center">
55
- <img src="/readme/check_02.png" height="22" title="New Controller" align="absmiddle" />&nbsp; <strong>New Controller</strong> &nbsp;
56
- <img src="/readme/check_02.png" height="22" title="New Middleware" align="absmiddle" />&nbsp; <strong>New Middleware</strong> &nbsp;
57
- <img src="/readme/check_02.png" height="22" title="Full Test Suite" align="absmiddle" />&nbsp; <strong>Full Test Suite</strong> &nbsp;
58
- <img src="/readme/check_02.png" height="22" title="Rails 4 & 5 Compatible" align="absmiddle" />&nbsp; <strong>FULLY Rails 4 & 5 Compatible</strong> &nbsp;
49
+ <img src="readme/check_02.png" height="22" title="New Controller" align="absmiddle" />&nbsp; <strong>New Controller</strong> &nbsp;
50
+ <img src="readme/check_02.png" height="22" title="New Middleware" align="absmiddle" />&nbsp; <strong>New Middleware</strong> &nbsp;
51
+ <img src="readme/check_02.png" height="22" title="Full Test Suite" align="absmiddle" />&nbsp; <strong>Full Test Suite</strong> &nbsp;
52
+ <img src="readme/check_02.png" height="22" title="Rails 4 & 5 Compatible" align="absmiddle" />&nbsp; <strong>FULLY Rails 4 & 5 Compatible</strong> &nbsp;
59
53
  </p>
60
54
 
61
55
  Brand new `controller`, `middleware` & options have made **`ExceptionHandler`** even more powerful & efficient. Now you can use `ExceptionHandler` directly with a single click -- **plug and play** custom exception pages:
62
56
 
63
57
  <div align="center">
64
- <img src="/readme/400.jpg" title="400 Errors" width="435" />
65
- <img src="/readme/500.jpg" title="500 Errors" width="435" />
58
+ <img src="readme/400.jpg" title="400 Errors" width="435" />
59
+ <img src="readme/500.jpg" title="500 Errors" width="435" />
66
60
  </div>
67
61
 
68
62
  **ExceptionHandler** uses `config.exceptions_app` to catch & send errors to the [`exceptions` controller](app/controllers/exception_handler/exception_controller.rb).
@@ -73,14 +67,14 @@ It uses data stored in `Rack` (`message`, `details`, `user agent`) to populate i
73
67
 
74
68
  <p align="center">
75
69
  <br />
76
- <img src="/readme/titles/middleware.jpg" title="Middleware Powered Exceptions" width="300" />
70
+ <img src="readme/titles/middleware.jpg" title="Middleware Powered Exceptions" width="300" />
77
71
  <br />
78
72
  </p>
79
73
 
80
74
  The power of **`ExceptionHandler`** lies in its capacity to access the [**`ActiveDispatch::ShowExceptions`**](https://github.com/rails/rails/blob/4-0-stable/actionpack/lib/action_dispatch/middleware/show_exceptions.rb) middleware:
81
75
 
82
76
  <p align="center">
83
- <img src="/readme/middleware.jpg" title="Exceptions handled by the ActiveDispatch::ShowExceptions Middleware" />
77
+ <img src="readme/middleware.jpg" title="Exceptions handled by the ActiveDispatch::ShowExceptions Middleware" />
84
78
  </p>
85
79
 
86
80
  Rails invokes [`config.exceptions_app`](http://guides.rubyonrails.org/configuring.html#rails-general-configuration) whenever an exception is raised.
@@ -116,7 +110,8 @@ It's completely unique - the **only** professional solution to catch, process &
116
110
 
117
111
  or
118
112
 
119
- gem 'exception_handler', '~> 0.5.0' #-> Gemfile
113
+ # Gemfile
114
+ gem 'exception_handler', '~> 0.6.5'
120
115
 
121
116
  `ExceptionHandler`'s new **config** system (introduced in [`0.4.7`](https://github.com/richpeck/exception_handler/wiki/Setup)) stores all the [defaults](#user-content-defaults) - you just need to install the gem & let it run.
122
117
 
@@ -124,7 +119,7 @@ If you want to change *any* settings (detailed [below](#user-content-config)), y
124
119
 
125
120
  <p align="center">
126
121
  <a href="http://rubygems.org/gems/exception_handler" target="_blank">
127
- <img src="/readme/rubygems.jpg" title="30,000+ Downloads Through RubyGems" />
122
+ <img src="readme/rubygems.jpg" title="30,000+ Downloads Through RubyGems" />
128
123
  <br />
129
124
  </a>
130
125
  </p>
@@ -132,78 +127,79 @@ If you want to change *any* settings (detailed [below](#user-content-config)), y
132
127
  ----
133
128
 
134
129
  <p align="center" id="config">
135
- <br />
136
- <img src="readme/titles/config.jpg" title="Instant Custom Error Pages For Rails 4 & 5" width="325" />
130
+ <img src="readme/titles/setup.jpg" title="Instant Custom Error Pages For Rails 4 & 5" />
131
+ <br />
132
+ <a href="#defaults"><img src="readme/titles/setup/defaults.jpg" height="50" align="absmiddle" /></a>
133
+ <a href="#dev"><img src="readme/titles/setup/dev.jpg" height="50 align="absmiddle" /></a>
134
+ <a href="#email"><img src="readme/titles/setup/email.jpg" height="50 align="absmiddle" /></a>
135
+ <a href="#views"><img src="readme/titles/setup/views.jpg" height="50" align="absmiddle" /></a>
137
136
  </p>
138
137
 
139
- **`ExceptionHandler 0.5`** has the SIMPLEST config possible...
138
+ --
139
+
140
+
141
+ **`ExceptionHandler 0.6.5`** has *drastically* improved our famous 1-click install.
142
+
143
+ Not only have we removed all the bloat, but our initialization process now relies on a *single* hook which will set all the config variables as required. This is stark difference to the myriad of poorly-designed gems which cause massive lag in your Rails initialization process. `ExceptionHandler` is now more streamlined than ever:
140
144
 
141
145
  <p align="center">
142
- <img src="/readme/config_defaults.jpg" title="ExceptionHandler Default Configuration Options">
146
+ <img src="readme/defaults.jpg" title="ExceptionHandler Default Config Options">
143
147
  </p>
144
148
 
145
- The MAGIC is that it uses [`environment files`](http://guides.rubyonrails.org/configuring.html#creating-rails-environments).
149
+ The **MAGIC** lies in the [`environment files`](http://guides.rubyonrails.org/configuring.html#creating-rails-environments).
146
150
 
147
- You can apply the above options to any of Rails' environment files, allowing you to customize the `ExceptionHandler` gem without inducing ANY overhead. `Initializer` files just get in the way.
151
+ Instead of dopey initializers (which slow the system down), you can just use the Rails config files to set environment-dependent options. This allows us to maximize performance without any of the overhead associated with old-fashioned gems.
148
152
 
149
153
  > **IMPORTANT**
150
154
  >
151
155
  > If you're upgrading from >= `0.4.7`, you need to **remove your `exception_handler` initializer**.
152
- >
156
+ >
153
157
  > We've changed the load process to use Rails app config - **you don't need the `exception_handler` initializer any more**
154
158
 
155
159
  ----
156
160
 
157
- <br />
158
- <img src="readme/titles/defaults.jpg" title="Defaults" id="defaults" />
161
+ <p id="defaults">
162
+ <img src="readme/titles/setup/defaults.jpg" title="Defaults" height="75" border="2" />
163
+ </p>
159
164
 
160
- As can be seen in the [`config class`](/lib/exception_handler/config.rb), the following are all the options `exception_handler` accepts:
165
+ As can be seen in[`config`](/lib/exception_handler/config.rb), the following are all the options `ExceptionHandler` accepts:
161
166
 
162
167
  <p align="center">
163
- <img src="/readme/defaults.jpg" title="ExceptionHandler Default Configuration Options">
168
+ <img src="readme/defaults.jpg" title="ExceptionHandler Default Configuration Options">
164
169
  </p>
165
170
 
166
- # config.rb
171
+ # Defaults
167
172
  DEFAULTS = {
168
- dev: false, #-> defaults to "false" for dev mode
169
- db: false, #-> defaults to :errors if true, else input "table_name" as string
170
- email: false, #-> need to integrate
173
+ dev: false, #-> defaults to "false" for dev mode
174
+ db: false, #-> defaults to :errors if true, else use "table_name" / :table_name
175
+ email: false, #-> requires string email and ActionMailer
171
176
  social: {
172
- :facebook => 'frontline.utilities', #-> Facebook handle
173
- :twitter => 'frontlineutils', #-> Twitter handle
174
- :youtube => 'frontlineutils', #-> YouTube handle
175
- :linkedin => 'frontline-utilities', #-> LinkedIn handle
176
- :fusion => 'frontlineutils', #-> Fusion handle
177
- :url => {
178
- :facebook => 'https://facebook.com', #-> no need to edit
179
- :twitter => 'http://twitter.com', #-> no need to edit
180
- :youtube => 'https://youtube.com/user', #-> no need to edit
181
- :linkedin => 'https://linkedin.com/company', #-> no need to edit
182
- :fusion => 'https://frontlinefusion.com', #-> no need to edit
183
- },
177
+ facebook: { name: "frontline.utilities", url: "https://facebook.com" },
178
+ twitter: { name: "frontlineutils", url: "http://twitter.com" },
179
+ youtube: { name: "frontlineutils", url: "https://youtube.com/user" },
180
+ linkedin: { name: "frontline-utilities", url: "https://linkedin.com/company" },
181
+ fusion: { name: "flutils", url: "https://frontlinefusion.com" }
184
182
  },
185
183
  layouts: {
186
- '404' => nil, #-> 404 Callback (needs improving big time) Use the following: '404' => <<-EOF redirect_to root_url, notice: "Hello" EOF
187
- '400' => nil, #-> layout for 400 error code (404 should only be used as response)
188
- '500' => 'exception'
184
+ "400" => nil, # => inherits from "ApplicationController" layout
185
+ "500" => "exception"
189
186
  },
190
187
  }
191
188
 
192
- The above are ***defaults***.
193
-
194
- You can change the options for each [`environment file`](http://guides.rubyonrails.org/configuring.html#creating-rails-environments):
189
+ You can apply any of the above defaults into one of the Rails [`environment files`](http://guides.rubyonrails.org/configuring.html#creating-rails-environments):
195
190
 
196
191
  - `config/application.rb`
197
192
  - `config/environments/development.rb`
198
193
  - `config/environments/production.rb`
199
194
  - `config/environments/staging.rb`
200
195
 
201
- The benefit of this is that it gives you the ability to customize `ExceptionHandler` for any of your environments. Contrary to a shitty `initializer`, you're able to sculpt the gem to work FOR YOU.
196
+ The benefit of this is that it gives you the ability to customize `ExceptionHandler` for *any* of your environments. Contrary to a shitty `initializer`, you're able to sculpt the gem to work for YOU.
202
197
 
203
198
  ----
204
199
 
205
- <br />
206
- <img src="readme/titles/dev.jpg" title="Development Mode (New!!!)" id="dev" />
200
+ <p id="dev">
201
+ <img src="readme/titles/dev.jpg" title="Development Mode" />
202
+ </p>
207
203
 
208
204
  Want to test in the `dev` environment?
209
205
 
@@ -212,7 +208,7 @@ Want to test in the `dev` environment?
212
208
  dev: true # -> Runs in development mode WITHOUT changing the app environment files
213
209
  }
214
210
 
215
- <img src="/readme/dev.jpg" title="ExceptionHandler Dev Mode - NEW!!!!!">
211
+ <img src="readme/dev.jpg" title="ExceptionHandler Dev Mode - NEW!!!!!">
216
212
 
217
213
  [`config.exceptions_app`](http://guides.rubyonrails.org/configuring.html#rails-general-configuration) *only* works when you have [`config.consider_all_requests_local = true`](http://blog.bigbinary.com/2009/02/05/rescue_action_in_public-local_request-and-how-to-configure-local_request.html), which is `true` in `development`:
218
214
 
@@ -268,61 +264,78 @@ If you want to store exceptions in your `db`, you will need to set up a **migrat
268
264
 
269
265
  You will also need to ensure your config db option is either `true` or `"table_name"`:
270
266
 
271
- <img src="/readme/db.jpg" title="ExceptionHandler DB Config">
267
+ <img src="readme/db.jpg" title="ExceptionHandler DB Config">
272
268
 
273
- <img src="/readme/db_screenshot.jpg" title="ExceptionHandler Database">
269
+ <img src="readme/db_screenshot.jpg" title="ExceptionHandler Database">
274
270
 
275
271
  > **IMPORTANT**
276
- >
277
- > `ExceptionHandler`'s [new config system](https://github.com/richpeck/exception_handler/wiki/Setup) is `environment` agnostic.
278
- >
272
+ >
273
+ > `ExceptionHandler`'s [new config system](https://github.com/richpeck/exception_handler/wiki/Setup) is `environment` agnostic.
274
+ >
279
275
  > **Where you declare your `db` setting will change depending on your environment**
280
- >
276
+ >
281
277
  > If you declare `db` in `application.rb`, it will be applicable for all `environments`; only declaring in `production.rb` will set it for production *only*.
282
278
 
283
279
  ----
284
280
 
285
- <p align="center" id="support">
286
- <br />
287
- <img src="readme/titles/support.jpg" title="1hr & 24 hr Support" width="225" />
281
+ <p id="support">
282
+ <img src="readme/titles/support.jpg" title="1hr & 24 hr Support" />
288
283
  </p>
289
284
 
290
- Github Issue (1hr) | Stackoverflow (24hrs)
291
- :----: | :----:
292
- [![StackOverflow](/readme/github.jpg)](https://github.com/richpeck/exception_handler/issues) | [![StackOverflow](/readme/stackoverflow.jpg)](http://stackoverflow.com/questions/ask?tags=ruby-on-rails+exception-handler)
285
+ We offer support through [GitHub](http://github.com/richpeck/exception_handler/issues) and [StackOverflow](http://stackoverflow.com/questions/ask?tags=ruby-on-rails+exception-handler).
293
286
 
294
- We use **`ExceptionHandler`** in production, so we have a vested interest in keeping it running smoothly.
287
+ Whilst we can't guarantee response times, we are always eager to make sure `ExceptionHandler` is the most secure, robust and effective solution for Rails exception pages. You can use the links below to access support directly:
295
288
 
296
- Asking in either of the above services will give you a response. Don't be shy, we want to make this the best `exception handling` middleware for Rails.
289
+ Github (~1hr) | Stackoverflow (~24hrs)
290
+ :----: | :----:
291
+ [![StackOverflow](readme/github.jpg)](https://github.com/richpeck/exception_handler/issues) | [![StackOverflow](readme/stackoverflow.jpg)](http://stackoverflow.com/questions/ask?tags=ruby-on-rails+exception-handler)
297
292
 
298
- --
293
+ We use **`ExceptionHandler`** in production, so have a vested interest in keeping it running smoothly.
294
+
295
+ ---
299
296
 
300
- <br />
301
297
  <img src="readme/titles/changelog.jpg" title="Changelog" id="changelog" />
302
298
 
303
- #### 0.5.1
304
- - Next release
299
+ The next version will be **`0.7.0`**. Current is **`0.6.5`**.
300
+
301
+ Functionality remains consistent with both releases, the main difference will be the way in which they handle backend processes. **`0.6.5`** completely overhauled the backend, making the `controller`, `model` and `middleware` much more streamlined.
302
+
303
+ The biggest update for **`0.6.5.`** has been the removal of most of the middleware, putting the entire system into a central class. This not only allows us to centralize the data structure, but also remove many files which didn't matter.
304
+
305
+ Here is a rundown of what to expect ...
305
306
 
306
- #### 0.5.0
307
+ ### 0.7.0
308
+ - Completely new style
309
+ - Custom exceptions
310
+ - Test suite integration
311
+ - Full readme / wiki overhaul
312
+
313
+ ### → 0.6.5
314
+ - Streamlined interface
315
+ - ActiveRecord / Middleware overhaul
316
+ - Supports Sprockets 4+ ([`manifest.js`](http://eileencodes.com/posts/the-sprockets-4-manifest/))
317
+ - Email integration
318
+ - Asset overhaul & improvement
319
+ - Removed dependencies
320
+
321
+ ### → 0.5.0
307
322
  - Added locales
308
323
  - Email notifications
309
- - Full test suite (finally)
324
+ - Full test suite
310
325
  - Rails 4.2 & Rails 5.0 native ([`request.env`](https://github.com/rails/rails/commit/05934d24aff62d66fc62621aa38dae6456e276be) fix)
311
326
  - Controller fixed
312
327
  - `DB` fixed
313
- - Legacy initializer support ([more](https://github.com/richpeck/exception_handler/wiki/Setup))
328
+ - Legacy initializer support ([more](https://github.com/richpeck/exception_handler/wiki/1-Setup))
314
329
  - Rails asset management improvement
315
- - Cut out most dev files from gem (drastic reduction in gem size)
330
+ - Reduced gem file
316
331
 
332
+ ### → 0.4.7
317
333
 
318
- #### 0.4.7
319
-
320
- - New config system ([more](https://github.com/richpeck/exception_handler/wiki/Setup))
334
+ - New config system ([more](https://github.com/richpeck/exception_handler/wiki/1-Setup))
321
335
  - Fixed controller layout issues
322
336
  - Streamlined middleware
323
337
  - New layout & interface implementation
324
338
 
325
-
326
339
  ----------
327
340
 
328
- &copy; 2016 [**R Peck**](http://stackoverflow.com/users/1143732/richard-peck) for [**FL**](http://frontlineutilities.co.uk)
341
+ <strong>&copy; 2016</strong> <a href="http://www.frontlineutilities.co.uk" target="_blank" align="absmiddle"><img src="readme/fl.png" height="22" title="Frontline Utilities LTD" alt="Frontline Utilities LTD" align="absmiddle" /></a> <a href="http://stackoverflow.com/users/1143732/richard-peck" target="_blank" align="absmiddle"><img src="https://avatars0.githubusercontent.com/u/1104431" title="Richard Peck" align="absmiddle" height="22" alt="Richard Peck" /></a>
@@ -0,0 +1,18 @@
1
+ /* ---------------------------------------------------- */
2
+ /* ---------------------------------------------------- */
3
+ /* _____ _____ _____ */
4
+ /* / __ \/ ___/ ___| */
5
+ /* | / \/\ `--.\ `--. */
6
+ /* | | `--. \`--. \ */
7
+ /* | \__/\/\__/ /\__/ / */
8
+ /* \____/\____/\_____/ */
9
+ /* */
10
+ /* ---------------------------------------------------- */
11
+ /* ---------------------------------------------------- */
12
+ /*
13
+ *= require_self
14
+ *= require_tree ./styles
15
+ */
16
+ /* ---------------------------------------------------- */
17
+ /* ---------------------------------------------------- */
18
+ /* ---------------------------------------------------- */
@@ -0,0 +1,34 @@
1
+ /* ---------------------------------------------------- */
2
+ /* ---------------------------------------------------- */
3
+ /* Dependencies */
4
+ /* ---------------------------------------------------- */
5
+ /* ---------------------------------------------------- */
6
+
7
+ /*
8
+ *= link_tree ../../images
9
+ */
10
+
11
+ /* ---------------------------------------------------- */
12
+ /* ---------------------------------------------------- */
13
+
14
+ * { margin: 0; }
15
+ html, body { height: 100%; }
16
+ html {
17
+ height: 100%;
18
+ color: #fff;
19
+ background: #010008 url(<%= asset_url("exception_handler/bg.jpg") %>) top left no-repeat;
20
+ background-size: 100% 100%;
21
+ box-sizing: border-box;
22
+ }
23
+ body {
24
+ font-family: Helvetica, Arial, Sans-Serif;
25
+ font-size: 12px;
26
+ text-transform: capitalize;
27
+ box-sizing: border-box;
28
+ overflow-x: hidden;
29
+ }
30
+ a { color: #fff; text-decoration: none; }
31
+ a:hover { text-decoration: underline; }
32
+
33
+ /* ---------------------------------------------------- */
34
+ /* ---------------------------------------------------- */