saddle 0.0.44 → 0.0.45

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.
data/CHANGELOG.md CHANGED
@@ -1,3 +1,8 @@
1
+ # 0.0.45
2
+ * DefaultResponse is now the top-level middleware
3
+ * DefaultResponse now catches *all* exceptions
4
+ * Some cleanup in the requester's connection builder
5
+
1
6
  # 0.0.44
2
7
  * Fixed a bug where child endpoints were being attached to the parent's class. This would
3
8
  cause problems because the root node's class is always TraversalEndpoint, and would be shared
@@ -12,7 +12,7 @@ module Saddle
12
12
  def call(env)
13
13
  begin
14
14
  @app.call(env)
15
- rescue Faraday::Error::ClientError
15
+ rescue
16
16
  if res = env[:request][:default_response]
17
17
  return ::Faraday::Response.new(:body => res)
18
18
  else
@@ -120,35 +120,31 @@ module Saddle
120
120
  # Include the requester level options
121
121
  builder.options[:client_options] = @options
122
122
 
123
- # Include a saddle hash
123
+ # Config options
124
+ builder.options[:timeout] = @timeout
125
+ builder.options[:request_style] = @request_style
126
+ builder.options[:num_retries] = @num_retries
124
127
  builder.options[:saddle] = {
125
128
  :client => @parent_client,
126
129
  }
127
130
 
128
- # Config options
129
- unless @timeout.nil?
130
- builder.options[:timeout] = @timeout
131
- builder.options[:request_style] = @request_style
132
- builder.options[:num_retries] = @num_retries
133
- end
131
+ # Support default return values upon exception
132
+ builder.use(Saddle::Middleware::Response::DefaultResponse)
134
133
 
135
134
  # Hard timeout on the entire request
136
135
  builder.use(Saddle::Middleware::RubyTimeout)
137
136
 
137
+ # Apply additional implementation-specific middlewares
138
+ @additional_middlewares.each do |m|
139
+ builder.use(m[:klass], *m[:args])
140
+ end
141
+
138
142
  # Set up a user agent
139
143
  builder.use(Saddle::Middleware::Request::UserAgent)
140
144
 
141
145
  # Set up the path prefix if needed
142
146
  builder.use(Saddle::Middleware::Request::PathPrefix)
143
147
 
144
- # Support default return values upon exception
145
- builder.use(Saddle::Middleware::Response::DefaultResponse)
146
-
147
- # Apply additional implementation-specific middlewares
148
- @additional_middlewares.each do |m|
149
- builder.use(m[:klass], *m[:args])
150
- end
151
-
152
148
  # Request encoding
153
149
  builder.use(Saddle::Middleware::Request::JsonEncoded)
154
150
  builder.use(Saddle::Middleware::Request::UrlEncoded)
@@ -1,3 +1,3 @@
1
1
  module Saddle
2
- VERSION = '0.0.44'
2
+ VERSION = '0.0.45'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: saddle
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.44
4
+ version: 0.0.45
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-09-16 00:00:00.000000000 Z
12
+ date: 2013-09-25 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport