faraday 0.6.0 → 0.6.1

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.
@@ -12,8 +12,8 @@ Gem::Specification.new do |s|
12
12
  ## If your rubyforge_project name is different, then edit it and comment out
13
13
  ## the sub! line in the Rakefile
14
14
  s.name = 'faraday'
15
- s.version = '0.6.0'
16
- s.date = '2011-03-31'
15
+ s.version = '0.6.1'
16
+ s.date = '2011-04-13'
17
17
  s.rubyforge_project = 'faraday'
18
18
 
19
19
  ## Make sure your summary is short. The description may be as long
@@ -1,5 +1,5 @@
1
1
  module Faraday
2
- VERSION = "0.6.0"
2
+ VERSION = "0.6.1"
3
3
 
4
4
  class << self
5
5
  attr_accessor :default_adapter
@@ -31,8 +31,13 @@ module Faraday
31
31
  end
32
32
  end
33
33
 
34
- def response_headers(env)
35
- env[:response_headers] ||= Utils::Headers.new
34
+ def save_response(env, status, body, headers = nil)
35
+ env[:status] = status
36
+ env[:body] = body
37
+ env[:response_headers] = Utils::Headers.new.tap do |response_headers|
38
+ response_headers.update headers unless headers.nil?
39
+ yield response_headers if block_given?
40
+ end
36
41
  end
37
42
  end
38
43
  end
@@ -21,8 +21,7 @@ module Faraday
21
21
  super
22
22
  @session.__send__(env[:method], env[:url].request_uri, env[:body], env[:request_headers])
23
23
  resp = @session.response
24
- env.update :status => resp.status, :body => resp.body
25
- response_headers(env).update resp.headers
24
+ save_response(env, resp.status, resp.body, resp.headers)
26
25
  @app.call env
27
26
  end
28
27
  end
@@ -51,10 +51,11 @@ module Faraday
51
51
  client = block.call
52
52
  end
53
53
 
54
- client.response_header.each do |name, value|
55
- response_headers(env)[name.to_sym] = value
54
+ save_response(env, client.response_header.status, client.response) do |response_headers|
55
+ client.response_header.each do |name, value|
56
+ response_headers[name.to_sym] = value
57
+ end
56
58
  end
57
- env.update :status => client.response_header.status, :body => client.response
58
59
 
59
60
  @app.call env
60
61
  rescue Errno::ECONNREFUSED
@@ -17,8 +17,7 @@ module Faraday
17
17
  :headers => env[:request_headers],
18
18
  :body => env[:body]
19
19
 
20
- env.update :status => resp.status.to_i, :body => resp.body
21
- response_headers(env).update resp.headers
20
+ save_response(env, resp.status.to_i, resp.body, resp.headers)
22
21
 
23
22
  @app.call env
24
23
  rescue ::Excon::Errors::SocketError
@@ -22,6 +22,7 @@ module Faraday
22
22
  http.cert = ssl[:client_cert] if ssl[:client_cert]
23
23
  http.key = ssl[:client_key] if ssl[:client_key]
24
24
  http.ca_file = ssl[:ca_file] if ssl[:ca_file]
25
+ http.ca_path = ssl[:ca_path] if ssl[:ca_path]
25
26
  http.cert_store = ssl[:cert_store] if ssl[:cert_store]
26
27
  end
27
28
 
@@ -53,10 +54,11 @@ module Faraday
53
54
  raise Error::ConnectionFailed, $!
54
55
  end
55
56
 
56
- http_response.each_header do |key, value|
57
- response_headers(env)[key] = value
57
+ save_response(env, http_response.code.to_i, http_response.body) do |response_headers|
58
+ http_response.each_header do |key, value|
59
+ response_headers[key] = value
60
+ end
58
61
  end
59
- env.update :status => http_response.code.to_i, :body => http_response.body
60
62
 
61
63
  @app.call env
62
64
  end
@@ -21,8 +21,7 @@ module Faraday
21
21
  raise Error::ConnectionFailed, $!
22
22
  end
23
23
 
24
- env.update :status => response.status, :body => response.body
25
- response_headers(env).update response.headers
24
+ save_response(env, response.status, response.body, response.headers)
26
25
 
27
26
  @app.call env
28
27
  end
@@ -110,8 +110,7 @@ module Faraday
110
110
 
111
111
  if stub = stubs.match(env[:method], normalized_path, env[:body])
112
112
  status, headers, body = stub.block.call(env)
113
- env.update :status => status, :body => body
114
- response_headers(env).update headers
113
+ save_response(env, status, body, headers)
115
114
  else
116
115
  raise "no stubbed request for #{env[:method]} #{normalized_path} #{env[:body]}"
117
116
  end
@@ -27,8 +27,10 @@ module Faraday
27
27
 
28
28
  is_parallel = !!env[:parallel_manager]
29
29
  req.on_complete do |resp|
30
- env.update :status => resp.code, :body => resp.body
31
- response_headers(env).parse resp.headers
30
+ save_response(env, resp.code, resp.body) do |response_headers|
31
+ response_headers.parse resp.headers
32
+ end
33
+ # in async mode, :response is initialized at this point
32
34
  env[:response].finish(env) if is_parallel
33
35
  end
34
36
 
metadata CHANGED
@@ -1,13 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: faraday
3
3
  version: !ruby/object:Gem::Version
4
- hash: 7
5
- prerelease: false
6
- segments:
7
- - 0
8
- - 6
9
- - 0
10
- version: 0.6.0
4
+ prerelease:
5
+ version: 0.6.1
11
6
  platform: ruby
12
7
  authors:
13
8
  - Rick Olson
@@ -15,8 +10,7 @@ autorequire:
15
10
  bindir: bin
16
11
  cert_chain: []
17
12
 
18
- date: 2011-03-31 00:00:00 -07:00
19
- default_executable:
13
+ date: 2011-04-13 00:00:00 Z
20
14
  dependencies:
21
15
  - !ruby/object:Gem::Dependency
22
16
  name: rake
@@ -26,10 +20,6 @@ dependencies:
26
20
  requirements:
27
21
  - - ~>
28
22
  - !ruby/object:Gem::Version
29
- hash: 27
30
- segments:
31
- - 0
32
- - 8
33
23
  version: "0.8"
34
24
  type: :development
35
25
  version_requirements: *id001
@@ -41,11 +31,6 @@ dependencies:
41
31
  requirements:
42
32
  - - ~>
43
33
  - !ruby/object:Gem::Version
44
- hash: 15
45
- segments:
46
- - 2
47
- - 2
48
- - 4
49
34
  version: 2.2.4
50
35
  type: :runtime
51
36
  version_requirements: *id002
@@ -57,11 +42,6 @@ dependencies:
57
42
  requirements:
58
43
  - - ~>
59
44
  - !ruby/object:Gem::Version
60
- hash: 19
61
- segments:
62
- - 1
63
- - 1
64
- - 0
65
45
  version: 1.1.0
66
46
  type: :runtime
67
47
  version_requirements: *id003
@@ -73,17 +53,9 @@ dependencies:
73
53
  requirements:
74
54
  - - ">="
75
55
  - !ruby/object:Gem::Version
76
- hash: 19
77
- segments:
78
- - 1
79
- - 1
80
- - 0
81
56
  version: 1.1.0
82
57
  - - <
83
58
  - !ruby/object:Gem::Version
84
- hash: 7
85
- segments:
86
- - 2
87
59
  version: "2"
88
60
  type: :runtime
89
61
  version_requirements: *id004
@@ -134,7 +106,6 @@ files:
134
106
  - test/middleware_stack_test.rb
135
107
  - test/request_middleware_test.rb
136
108
  - test/response_middleware_test.rb
137
- has_rdoc: true
138
109
  homepage: http://github.com/technoweenie/faraday
139
110
  licenses: []
140
111
 
@@ -148,25 +119,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
148
119
  requirements:
149
120
  - - ">="
150
121
  - !ruby/object:Gem::Version
151
- hash: 3
152
- segments:
153
- - 0
154
122
  version: "0"
155
123
  required_rubygems_version: !ruby/object:Gem::Requirement
156
124
  none: false
157
125
  requirements:
158
126
  - - ">="
159
127
  - !ruby/object:Gem::Version
160
- hash: 17
161
- segments:
162
- - 1
163
- - 3
164
- - 5
165
128
  version: 1.3.5
166
129
  requirements: []
167
130
 
168
131
  rubyforge_project: faraday
169
- rubygems_version: 1.3.7
132
+ rubygems_version: 1.7.2
170
133
  signing_key:
171
134
  specification_version: 2
172
135
  summary: HTTP/REST API client library.
@@ -180,3 +143,4 @@ test_files:
180
143
  - test/middleware_stack_test.rb
181
144
  - test/request_middleware_test.rb
182
145
  - test/response_middleware_test.rb
146
+ has_rdoc: