faraday 1.5.1 → 1.6.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: 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