spider-gazelle 1.0.4 → 1.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d15ffeefedb38fb84b5c83512debaa30ca98f8d0
4
- data.tar.gz: 34f054e675f5ad91168086e45bd0d518c0907027
3
+ metadata.gz: aeeb2298300d8da4d2f42c72ae863890bdaf4bd1
4
+ data.tar.gz: 57f36f06c105a1d4a0f1159e84f314d7643bfc66
5
5
  SHA512:
6
- metadata.gz: 4f50ee47e045cfe496e34334f61a594247cfaead769b0cf86de1ce016a66c4df155043c7a1443539c745ee0bc7f975e343ac52d55cf535b2156fd12a136ce813
7
- data.tar.gz: aceba5158162fa338f8b64b9ef7d82487e66a61ebe8dd422141b057584dafff49ceb44948cfd73bbddcd2baabc04da54f65a2ff85b30be6efb8b0c6c074021eb
6
+ metadata.gz: 0e74529dcefd976af63a9ba055d0cfef12af3d12cd80aeee35bd8f7622aaf90169202e30d9753459d10231e8ca0f543351241242ffd6ddad3bf94cdfd63d27ff
7
+ data.tar.gz: 173ec327155daba986d1a4d594bb0c75872a99b69f080f510d90c8d5370543dd5f93f824afd88374412cb2cfab48c12c981c89a7a3545e1f40cee9f53256d8d8
@@ -119,7 +119,13 @@ module SpiderGazelle
119
119
  # Returns the response as the result of the work
120
120
  # We support the unofficial rack async api (multi-call version for chunked responses)
121
121
  def work
122
- @request.execute!
122
+ begin
123
+ @request.execute!
124
+ rescue => e
125
+ @gazelle.logger.error "framework error: #{e.message}\n#{e.backtrace.join("\n") if e.backtrace}\n"
126
+ @request.keep_alive = false
127
+ [500, {}, EMPTY_RESPONSE]
128
+ end
123
129
  end
124
130
 
125
131
  # Unlinks the connection from the rack app
@@ -27,7 +27,7 @@ module SpiderGazelle
27
27
  # REMOTE_USER, or REMOTE_HOST parameters since those are either a security problem or
28
28
  # too taxing on performance.
29
29
  module Const
30
- SPIDER_GAZELLE_VERSION = VERSION = "1.0.4".freeze
30
+ SPIDER_GAZELLE_VERSION = VERSION = "1.0.5".freeze
31
31
  # CODE_NAME = "Earl of Sandwich Partition"
32
32
  SERVER = "SpiderGazelle".freeze
33
33
 
@@ -58,7 +58,7 @@ module SpiderGazelle
58
58
  # SPIDER_GAZELLE_TMP_BASE = "spider-gazelle".freeze
59
59
 
60
60
  # # Indicate that we couldn"t parse the request
61
- ERROR_400_RESPONSE = "HTTP/1.1 400 Bad Request\r\n\r\n"
61
+ ERROR_400_RESPONSE = "HTTP/1.1 400 Bad Request\r\n\r\n".freeze
62
62
 
63
63
  # The standard empty 404 response for bad requests. Use Error4040Handler for custom stuff.
64
64
  ERROR_404_RESPONSE = "HTTP/1.1 404 Not Found\r\nConnection: close\r\nServer: #{SERVER} #{SPIDER_GAZELLE_VERSION}\r\n\r\nNOT FOUND".freeze
@@ -67,7 +67,8 @@ module SpiderGazelle
67
67
  ERROR_408_RESPONSE = "HTTP/1.1 408 Request Timeout\r\nConnection: close\r\nServer: #{SERVER} #{SPIDER_GAZELLE_VERSION}\r\n\r\n".freeze
68
68
 
69
69
  # Indicate that there was an internal error, obviously.
70
- ERROR_500_RESPONSE = "HTTP/1.1 500 Internal Server Error\r\n\r\n"
70
+ ERROR_500_RESPONSE = "HTTP/1.1 500 Internal Server Error\r\n\r\n".freeze
71
+ EMPTY_RESPONSE = [''.freeze].freeze
71
72
 
72
73
  # A common header for indicating the server is too busy. Not used yet.
73
74
  ERROR_503_RESPONSE = "HTTP/1.1 503 Service Unavailable\r\n\r\nBUSY".freeze
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spider-gazelle
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stephen von Takach
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-03-24 00:00:00.000000000 Z
11
+ date: 2015-04-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake