faraday 1.5.1 → 1.6.0

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
  SHA256:
3
- metadata.gz: 05b41e618d412fbb6199856f571098ff152bf81b42839139a2f0527d8f54e6d4
4
- data.tar.gz: 5bf7bfe979404c4b58c6030b2348181bfada78c7eca1e352e1eec271b2c490aa
3
+ metadata.gz: 1c84d273b85bc4643cccee381fc7a1190305143d5dc89447fe5ac41e1db7a89e
4
+ data.tar.gz: 6d9409101febc5167e3c98f33c4b5b15f0dcc68c4e3fc13198930b76dd83a39e
5
5
  SHA512:
6
- metadata.gz: af7ce1cc0c2a34c6733e2cb655ba2b8fe66729300ee40d9ba0a9161d56ba7e4318ffa4fa754f66d80714732bafe895ec2d2eac717ce62115ee3e3e1979830672
7
- data.tar.gz: 3b92a28b2c1172da22f5892d2105e266d3873eb48d07a11090b2b52b5e5bb4a7bacfd8cd15e43b1094ea9df373014d9eb8a1a56226c808440c97489974b249b4
6
+ metadata.gz: a8e6280590ce1eb1b41311351e8e13b4de8f6571523f383d1651d63589db040a07eb0d0110a2d441f3fa275468b6eca6767924b8948c2e0f6cbfb2e1ef20b39a
7
+ data.tar.gz: b9df5e99b07e33d19b8d2fca7ba5357e38a95fa662c960c34876f3fe43348ffe15b5fd95abc90ee0f811885dcddaac3d7f28a4f09046f6450c5202153af4f8c0
data/lib/faraday.rb CHANGED
@@ -36,6 +36,7 @@ require 'faraday/httpclient'
36
36
  require 'faraday/net_http'
37
37
  require 'faraday/net_http_persistent'
38
38
  require 'faraday/patron'
39
+ require 'faraday/rack'
39
40
 
40
41
  # This is the main namespace for Faraday.
41
42
  #
@@ -11,8 +11,7 @@ module Faraday
11
11
 
12
12
  register_middleware File.expand_path('adapter', __dir__),
13
13
  test: [:Test, 'test'],
14
- typhoeus: [:Typhoeus, 'typhoeus'],
15
- rack: [:Rack, 'rack']
14
+ typhoeus: [:Typhoeus, 'typhoeus']
16
15
 
17
16
  # This module marks an Adapter as supporting parallel requests.
18
17
  module Parallelism
@@ -59,8 +59,7 @@ module Faraday
59
59
  extend AutoloadHelper
60
60
  autoload_all 'faraday/adapter',
61
61
  Typhoeus: 'typhoeus',
62
- Test: 'test',
63
- Rack: 'rack'
62
+ Test: 'test'
64
63
  end
65
64
 
66
65
  # Request represents a single HTTP request for a Faraday adapter to make.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Faraday
4
- VERSION = '1.5.1'
4
+ VERSION = '1.6.0'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: faraday
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.1
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - "@technoweenie"
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2021-07-11 00:00:00.000000000 Z
13
+ date: 2021-08-01 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: faraday-em_http
@@ -110,6 +110,20 @@ dependencies:
110
110
  - - "~>"
111
111
  - !ruby/object:Gem::Version
112
112
  version: '1.0'
113
+ - !ruby/object:Gem::Dependency
114
+ name: faraday-rack
115
+ requirement: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - "~>"
118
+ - !ruby/object:Gem::Version
119
+ version: '1.0'
120
+ type: :runtime
121
+ prerelease: false
122
+ version_requirements: !ruby/object:Gem::Requirement
123
+ requirements:
124
+ - - "~>"
125
+ - !ruby/object:Gem::Version
126
+ version: '1.0'
113
127
  - !ruby/object:Gem::Dependency
114
128
  name: multipart-post
115
129
  requirement: !ruby/object:Gem::Requirement
@@ -158,7 +172,6 @@ files:
158
172
  - examples/client_test.rb
159
173
  - lib/faraday.rb
160
174
  - lib/faraday/adapter.rb
161
- - lib/faraday/adapter/rack.rb
162
175
  - lib/faraday/adapter/test.rb
163
176
  - lib/faraday/adapter/typhoeus.rb
164
177
  - lib/faraday/adapter_registry.rb
@@ -247,7 +260,7 @@ licenses:
247
260
  - MIT
248
261
  metadata:
249
262
  homepage_uri: https://lostisland.github.io/faraday
250
- changelog_uri: https://github.com/lostisland/faraday/releases/tag/v1.5.1
263
+ changelog_uri: https://github.com/lostisland/faraday/releases/tag/v1.6.0
251
264
  source_code_uri: https://github.com/lostisland/faraday
252
265
  bug_tracker_uri: https://github.com/lostisland/faraday/issues
253
266
  post_install_message:
@@ -1,75 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Faraday
4
- class Adapter
5
- # Sends requests to a Rack app.
6
- #
7
- # @example
8
- #
9
- # class MyRackApp
10
- # def call(env)
11
- # [200, {'Content-Type' => 'text/html'}, ["hello world"]]
12
- # end
13
- # end
14
- #
15
- # Faraday.new do |conn|
16
- # conn.adapter :rack, MyRackApp.new
17
- # end
18
- class Rack < Faraday::Adapter
19
- dependency 'rack/test'
20
-
21
- # not prefixed with "HTTP_"
22
- SPECIAL_HEADERS = %w[CONTENT_LENGTH CONTENT_TYPE].freeze
23
-
24
- def initialize(faraday_app, rack_app)
25
- super(faraday_app)
26
- mock_session = ::Rack::MockSession.new(rack_app)
27
- @session = ::Rack::Test::Session.new(mock_session)
28
- end
29
-
30
- def call(env)
31
- super
32
- rack_env = build_rack_env(env)
33
-
34
- env[:request_headers]&.each do |name, value|
35
- name = name.upcase.tr('-', '_')
36
- name = "HTTP_#{name}" unless SPECIAL_HEADERS.include? name
37
- rack_env[name] = value
38
- end
39
-
40
- timeout = request_timeout(:open, env[:request])
41
- timeout ||= request_timeout(:read, env[:request])
42
- response = if timeout
43
- Timer.timeout(timeout, Faraday::TimeoutError) do
44
- execute_request(env, rack_env)
45
- end
46
- else
47
- execute_request(env, rack_env)
48
- end
49
-
50
- if (req = env[:request]).stream_response?
51
- warn "Streaming downloads for #{self.class.name} " \
52
- 'are not yet implemented.'
53
- req.on_data.call(response.body, response.body.bytesize)
54
- end
55
-
56
- save_response(env, response.status, response.body, response.headers)
57
- @app.call env
58
- end
59
-
60
- private
61
-
62
- def execute_request(env, rack_env)
63
- @session.request(env[:url].to_s, rack_env)
64
- end
65
-
66
- def build_rack_env(env)
67
- {
68
- method: env[:method],
69
- input: env[:body].respond_to?(:read) ? env[:body].read : env[:body],
70
- 'rack.url_scheme' => env[:url].scheme
71
- }
72
- end
73
- end
74
- end
75
- end