rails-hush 2.0.1 → 2.1.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b9c9a7040ec89a870ab1dfe8cc909b3f34ef32ef8449c09d85b122ef5b37e803
4
- data.tar.gz: 29740fa9f1eb2f1e4bfbc3f6ccf1bb9174c2bf07098b67942949e1913b0f818c
3
+ metadata.gz: 00ab0f565ef0a3f88f1fb4c3d6196da665def631ea3d1743fa7a934fbbdfd93a
4
+ data.tar.gz: 51d5c3e7a9479ce9f83995e31d3c2abd7a8093ee824e762b9cebf28f2d08e6c4
5
5
  SHA512:
6
- metadata.gz: 427f57e8bb14e09074dec074744c2bbd6c12fe216658c4edf4f9edfab8003d3132316d37e6ca1796dfee4d0e43127bece4b3c7e9a448ab2df476db56c4fe1951
7
- data.tar.gz: 2deab703a635d8de86ada4b2962960d7c66be29bb77ed7a5f82adfe4a6d5ad0195fca42cbfea78df86638b918cea38b77cc2fb46dae2d7879855a54c955197de
6
+ metadata.gz: 8de20c7aa3454d8b94b5aaefef18c8bf23ef1707fd61f74f2b88583934b2cdf96348f48bbb729bf2f33bb6d99107c4c3706180ea45be5b867db65a1061f5afa9
7
+ data.tar.gz: a142bee9e28c8d5997d7c9b91ebde061bc9844afeb0afe2673fe11331b12d439f14bba7d6d8e3d33e82f811d19230b799dd04f87e18149e73117783d8c435269
@@ -15,6 +15,8 @@ module RailsHush
15
15
  @app.call(env)
16
16
  rescue ActionController::UnknownHttpMethod
17
17
  render 405, request, 'Unrecognized HTTP method'
18
+ rescue Encoding::CompatibilityError
19
+ render 400, request, 'Invalid string or encoding'
18
20
  end
19
21
  else
20
22
  @app.call(env)
@@ -23,10 +23,14 @@ module RailsHush
23
23
  if x.message =~ /(Invalid encoding for parameter|invalid %-encoding)/
24
24
  log_request 400, request
25
25
  render 400, request, 'Invalid string or encoding'
26
+ elsif x.message =~ /Rack::Multipart::EmptyContentError|bad content body/
27
+ log_request 400, request
28
+ render 400, request, 'Unable to parse request body'
26
29
  else
27
30
  raise x
28
31
  end
29
- rescue ActionDispatch::Http::Parameters::ParseError
32
+ rescue ActionDispatch::Http::Parameters::ParseError,
33
+ Rack::Multipart::BoundaryTooLongError
30
34
  log_request 400, request
31
35
  render 400, request, 'Unable to parse request body'
32
36
  rescue ActionController::RoutingError => x
@@ -16,7 +16,9 @@ module RailsHush
16
16
  def render(status, request, error=nil)
17
17
  begin
18
18
  content_type = request.formats.first
19
- rescue Mime::Type::InvalidMimeType
19
+ rescue Mime::Type::InvalidMimeType,
20
+ Encoding::CompatibilityError,
21
+ Rack::Multipart::BoundaryTooLongError
20
22
  content_type = Mime[:text]
21
23
  end
22
24
  error ||= Rack::Utils::HTTP_STATUS_CODES.fetch(status, Rack::Utils::HTTP_STATUS_CODES[500])
@@ -1,3 +1,3 @@
1
1
  module RailsHush
2
- VERSION = '2.0.1'
2
+ VERSION = '2.1.0'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails-hush
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - thomas morgan