rb-net_http-client 1.1.4 → 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: ccd08c5fc978270d92748ff8a6594e8d5bb378291f6f9c20876ef4bcf1324c2a
4
- data.tar.gz: cd627208077f5aee71a705fbffa68508d30bbaeafe60b38398b9aadeea69906f
3
+ metadata.gz: 76514495cfbed0e713c811a595304ea13ae5937725b1dba6646fac7e3ad30c51
4
+ data.tar.gz: f8e1c648f4a160894bb528b1c0de495b177447c64667b6e2cd3dffce60b38f84
5
5
  SHA512:
6
- metadata.gz: 9a78e2436a1d5a7434e916faba197d82fef92e226c31f2d4506d2b3fcd49af6b21210b877fa3bf0d5d386b49e5de9b28758ee625d715e25ca2078b39ee8f6bc0
7
- data.tar.gz: 17f36a54dd7dc2f85a066ab13e62134e73346a7e58fdef771209f901c39a4810f341244408cb6c95526f4b1c428e38f4ce9235fff209ed9f20f6ec13a6270262
6
+ metadata.gz: c37314a18313a524c34866fa7c9fe2cbddb8afd1df9ada8758de62902fd577812d98369cfc9aee358cc3e38a46a1536f1ded02c99fdc4fbdd6cf5b840c5b1c4b
7
+ data.tar.gz: 1dca387d785df28c71ec30609bb6d6203f311070417054dfeac4b4315ac9637fca4ddb497753c836e99f880d6ad8d0fc2dba0d7911fffe57cda0c76209782696
data/lib/client/client.rb CHANGED
@@ -18,6 +18,7 @@ module NetHTTP
18
18
  :pkcs12,
19
19
  :pkcs12_file,
20
20
  :pkcs12_passphrase,
21
+ :proxy_from_env,
21
22
  :proxy_uri,
22
23
  :proxy_url,
23
24
  :query,
@@ -32,22 +33,27 @@ module NetHTTP
32
33
 
33
34
  def initialize(opts = {})
34
35
  send('logger=', opts[:logger])
35
- schema_results = Core.schema_validation(opts, NetHTTP::Client::Schema) unless opts[:enforce_schema_validation] == false
36
+ schema_results = Core.schema_validation(opts, NetHTTP::Client::Schema.new) unless opts[:enforce_schema_validation] == false
36
37
  unless schema_results.nil?
37
38
  logger.debug("NetHTTP::Client::SchemaError -> #{schema_results}")
38
39
  raise NetHTTP::Client::SchemaError.new(schema_results.to_s)
39
40
  end
40
41
 
41
42
  send('uri=', opts)
43
+ send('proxy_uri=', opts)
42
44
  send('client=', opts)
43
45
  end
44
46
 
45
47
  def client=(opts = {})
46
- @client = Net::HTTP.new(uri.host, uri.port)
48
+ if proxy_uri
49
+ @client = Net::HTTP::Proxy(proxy_uri.host, proxy_uri.port).new(uri.host, uri.port)
50
+ else
51
+ @client = Net::HTTP.new(uri.host, uri.port)
52
+ end
47
53
 
48
- send('proxy_uri=', opts)
49
- send('open_timeout=', (opts[:open_timeout] ||= 60))
50
- send('read_timeout=', (opts[:read_timeout] ||= 60))
54
+ send('proxy_from_env=', opts[:proxy_from_env])
55
+ send('open_timeout=', (opts[:open_timeout] || 60))
56
+ send('read_timeout=', (opts[:read_timeout] || 60))
51
57
  send('use_ssl=', opts[:use_ssl], uri.scheme)
52
58
  send('ssl_path=', opts[:ssl_path])
53
59
  send('pkcs12_file=', opts[:pkcs12_file])
@@ -58,6 +64,7 @@ module NetHTTP
58
64
  send('ca_file=', opts[:ca_file])
59
65
  send('verify_mode=', opts[:verify_mode])
60
66
 
67
+ @client.proxy_from_env = proxy_from_env
61
68
  @client.open_timeout = open_timeout
62
69
  @client.read_timeout = read_timeout
63
70
  @client.use_ssl = use_ssl
data/lib/client/ext.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  module NetHTTP
4
4
  class Client
5
5
  def proxy_uri=(opts = {})
6
- proxy_uri = opts[:proxy_uri] ||= opts[:proxy_url] ||= ENV['http_proxy'] ||= ENV['HTTP_PROXY'] ||= ENV['https_proxy'] ||= ENV['HTTPS_PROXY']
6
+ proxy_uri = opts[:proxy_uri] || opts[:proxy_url]
7
7
 
8
8
  begin
9
9
  if proxy_uri.to_s.empty? == false
@@ -21,14 +21,14 @@ module NetHTTP
21
21
  )
22
22
  )
23
23
  end
24
- rescue RuntimeError => error
25
- logger.debug(error)
24
+ rescue RuntimeError => err
25
+ logger.debug(err)
26
26
  @proxy_uri = nil
27
27
  end
28
28
  end
29
29
 
30
30
  def uri=(opts = {})
31
- uri = opts[:uri] ||= opts[:url]
31
+ uri = opts[:uri] || opts[:url]
32
32
  begin
33
33
  if uri.to_s.empty? == false
34
34
  @uri = Core::Utilities.parse_uri(uri)
@@ -45,8 +45,8 @@ module NetHTTP
45
45
  )
46
46
  )
47
47
  end
48
- rescue RuntimeError => error
49
- logger.debug(error)
48
+ rescue RuntimeError => err
49
+ logger.debug(err)
50
50
  @uri = nil
51
51
  end
52
52
  end
@@ -109,6 +109,14 @@ module NetHTTP
109
109
  end
110
110
  end
111
111
 
112
+ def proxy_from_env=(proxy_from_env)
113
+ if proxy_from_env == true
114
+ @proxy_from_env = true
115
+ else
116
+ @proxy_from_env = false
117
+ end
118
+ end
119
+
112
120
  def read_timeout=(read_timeout)
113
121
  @read_timeout = read_timeout.to_s.to_i
114
122
  end
data/lib/client/schema.rb CHANGED
@@ -4,47 +4,42 @@ require 'dry-validation'
4
4
 
5
5
  module NetHTTP
6
6
  class Client
7
- Schema = Dry::Validation.Schema do
8
- configure do
9
- def name
10
- 'NetHTTP::Client::Schema'
11
- end
12
-
13
- def true_or_false
14
- [true, false]
15
- end
7
+ class Schema < Dry::Validation::Contract
8
+ schema do
9
+ optional(:ca_file).value(:string).filled
10
+ optional(:host).value(:string)
11
+ optional(:logger).filled
12
+ optional(:open_timeout).value(:integer).filled
13
+ optional(:path).value(:string)
14
+ optional(:port).value(:integer)
15
+ optional(:pkcs12_file).value(:string).filled
16
+ optional(:pkcs12_passphrase).value(:string).filled
17
+ optional(:proxy_uri_host).value(:string)
18
+ optional(:proxy_uri_path).value(:string)
19
+ optional(:proxy_uri_port).value(:integer)
20
+ optional(:proxy_uri_scheme).value(:string)
21
+ optional(:proxy_uri).value(:string).filled
22
+ optional(:proxy_url).value(:string).filled
23
+ optional(:query).value(:string).filled
24
+ optional(:read_timeout).value(:integer).filled
25
+ optional(:scheme).value(:string)
26
+ optional(:ssl_path).value(:string).filled
27
+ optional(:uri).value(:string)
28
+ optional(:url).value(:string)
29
+ optional(:use_ssl)
30
+ optional(:verify_mode).filled
16
31
  end
17
32
 
18
- optional(:ca_file).filled(type?: String)
19
- optional(:host).maybe(type?: String)
20
- optional(:logger).filled
21
- optional(:open_timeout).filled(type?: Integer)
22
- optional(:path).maybe(type?: String)
23
- optional(:port).maybe(type?: Integer)
24
- optional(:pkcs12_file).filled(type?: String)
25
- optional(:pkcs12_passphrase).filled(type?: String)
26
- optional(:proxy_uri_host).maybe(type?: String)
27
- optional(:proxy_uri_path).maybe(type?: String)
28
- optional(:proxy_uri_port).maybe(type?: Integer)
29
- optional(:proxy_uri_scheme).maybe(type?: String)
30
- optional(:proxy_uri).filled(type?: String)
31
- optional(:proxy_url).filled(type?: String)
32
- optional(:query).filled(type?: String)
33
- optional(:read_timeout).filled(type?: Integer)
34
- optional(:scheme).maybe(type?: String)
35
- optional(:ssl_path).filled(type?: String)
36
- optional(:uri).maybe(type?: String)
37
- optional(:url).maybe(type?: String)
38
- optional(:use_ssl).filled(included_in?: true_or_false)
39
- optional(:verify_mode).filled
33
+ rule(:uri, :url, :host) do
34
+ key.failure('uri, url, & host cannot all be nil') if (values[:uri].nil? && values[:url].nil? && values[:host].nil?)
35
+ end
40
36
 
41
- rule(if_url_and_uri_are_nil_must_provide_host: [:uri, :url, :host]) do |uri, url, host|
42
- uri.empty?.then(url.empty?.then(host.filled?))
37
+ rule(:uri, :url, :scheme, :port) do
38
+ key.failure('if uri and url are nil, scheme or port cannot be nil') if (values[:uri].nil? && values[:url].nil? && (values[:scheme].nil? || values[:port].nil?))
43
39
  end
44
40
 
45
- rule(if_url_and_uri_are_nil_must_provide_scheme_or_port: [:uri, :url, :scheme, :port]) do |uri, url, scheme, port|
46
- uri.empty?.then(url.empty?.then(scheme.empty?.then(port.filled?)))
47
- uri.empty?.then(url.empty?.then(port.empty?.then(scheme.filled?)))
41
+ rule(:use_ssl) do
42
+ key.failure('use_ssl must be either true or false') if (!values[:use_ssl].nil? && values[:use_ssl].class != (FalseClass || TrueClass))
48
43
  end
49
44
  end
50
45
 
data/lib/core/core.rb CHANGED
@@ -20,14 +20,8 @@ module NetHTTP
20
20
  if results.success?
21
21
  return nil
22
22
  else
23
- return results.messages
23
+ return results.errors.to_h
24
24
  end
25
25
  end
26
26
  end
27
-
28
- class SchemaError < StandardError
29
- def initialize(msg)
30
- super(msg)
31
- end
32
- end
33
27
  end
@@ -56,15 +56,14 @@ module NetHTTP
56
56
  end
57
57
 
58
58
  def self.parse_query(query)
59
- # todo: may need to update this as URI.escape is considered obsolete
60
59
  case query
61
60
  when String
62
61
  query = query[1..-1] if query.start_with?('?')
63
- URI.escape("?#{query}")
62
+ URI.encode_www_form_component("?#{query}")
64
63
  when Hash
65
64
  query = query.map { |k, v| "#{k}=#{v}" }
66
65
  query = query.join('&')
67
- URI.escape("?#{query}")
66
+ URI.encode_www_form_component("?#{query}")
68
67
  else
69
68
  nil
70
69
  end
@@ -221,8 +220,8 @@ module NetHTTP
221
220
  format: 'snake',
222
221
  type: type.downcase
223
222
  )
224
- rescue RuntimeError => error
225
- raise error
223
+ rescue RuntimeError => err
224
+ raise err
226
225
  end
227
226
  end
228
227
 
@@ -245,8 +244,8 @@ module NetHTTP
245
244
  format: 'snake',
246
245
  type: type.downcase
247
246
  )
248
- rescue RuntimeError => error
249
- raise error
247
+ rescue RuntimeError => err
248
+ raise err
250
249
  end
251
250
  end
252
251
 
@@ -289,8 +288,8 @@ module NetHTTP
289
288
  format: 'snake',
290
289
  type: type.downcase
291
290
  )
292
- rescue RuntimeError => error
293
- raise error
291
+ rescue RuntimeError => err
292
+ raise err
294
293
  end
295
294
  end
296
295
 
@@ -300,13 +299,13 @@ module NetHTTP
300
299
  return false if json_doc.empty?
301
300
 
302
301
  JSON.parse(json_doc)
303
- rescue JSON::ParserError => error
302
+ rescue JSON::ParserError => err
304
303
  if logger.nil? || logger.to_s.empty?
305
304
  puts 'WARNING - JSON syntax / parsing errors detected:'
306
- puts error
305
+ puts err
307
306
  else
308
307
  logger.debug('WARNING - JSON syntax / parsing errors detected:')
309
- logger.debug(error)
308
+ logger.debug(err)
310
309
  end
311
310
  return false
312
311
  end
@@ -362,8 +361,8 @@ module NetHTTP
362
361
  end
363
362
  return true
364
363
  end
365
- rescue RuntimeError => error
366
- raise error
364
+ rescue RuntimeError => err
365
+ raise err
367
366
  end
368
367
 
369
368
  true
@@ -41,6 +41,8 @@ module NetHTTP
41
41
  logger.debug('Request Host => ' + request_opts[:uri].scheme.to_s + '://' + request_opts[:uri].host.to_s)
42
42
  logger.debug('Request Port => ' + request_opts[:uri].port.to_s)
43
43
  logger.debug('Request Path => ' + path)
44
+ logger.debug('Request Headers =>')
45
+ logger.debug(Hash[request_opts[:headers].to_h.map { |k, v| [k.to_s, v] }])
44
46
  NetHTTP::Response.new(
45
47
  response: client.delete(
46
48
  path
@@ -65,7 +67,7 @@ module NetHTTP
65
67
  logger.debug('Request Port => ' + request_opts[:uri].port.to_s)
66
68
  logger.debug('Request Path => ' + path)
67
69
  logger.debug('Request Headers =>')
68
- logger.debug(request_opts[:headers])
70
+ logger.debug(Hash[request_opts[:headers].to_h.map { |k, v| [k.to_s, v] }])
69
71
  NetHTTP::Response.new(
70
72
  response: client.get(
71
73
  path,
@@ -91,7 +93,7 @@ module NetHTTP
91
93
  logger.debug('Request Port => ' + request_opts[:uri].port.to_s)
92
94
  logger.debug('Request Path => ' + path)
93
95
  logger.debug('Request Headers =>')
94
- logger.debug(request_opts[:headers])
96
+ logger.debug(Hash[request_opts[:headers].to_h.map { |k, v| [k.to_s, v] }])
95
97
  logger.debug('Request Body =>')
96
98
  logger.debug(request_opts[:body])
97
99
  NetHTTP::Response.new(
@@ -120,7 +122,7 @@ module NetHTTP
120
122
  logger.debug('Request Port => ' + request_opts[:uri].port.to_s)
121
123
  logger.debug('Request Path => ' + path)
122
124
  logger.debug('Request Headers =>')
123
- logger.debug(request_opts[:headers])
125
+ logger.debug(Hash[request_opts[:headers].to_h.map { |k, v| [k.to_s, v] }])
124
126
  logger.debug('Request Body =>')
125
127
  logger.debug(URI.encode_www_form(request_opts[:body]))
126
128
  NetHTTP::Response.new(
@@ -151,7 +153,7 @@ module NetHTTP
151
153
  logger.debug('Request Port => ' + request_opts[:uri].port.to_s)
152
154
  logger.debug('Request Path => ' + path)
153
155
  logger.debug('Request Headers =>')
154
- logger.debug(request_opts[:headers])
156
+ logger.debug(Hash[request_opts[:headers].to_h.map { |k, v| [k.to_s, v] }])
155
157
  logger.debug('Request Body =>')
156
158
  logger.debug(request_opts[:body])
157
159
  NetHTTP::Response.new(
@@ -165,18 +167,18 @@ module NetHTTP
165
167
  end
166
168
 
167
169
  def request_opts(opts)
168
- schema_results = Core.schema_validation(opts, NetHTTP::Request::Schema) unless opts[:enforce_schema_validation] == false
170
+ schema_results = Core.schema_validation(opts, NetHTTP::Request::Schema.new) unless opts[:enforce_schema_validation] == false
169
171
  unless schema_results.nil?
170
172
  logger.debug("NetHTTP::Request::SchemaError -> #{schema_results}")
171
173
  raise NetHTTP::Request::SchemaError.new(schema_results.to_s)
172
174
  end
173
175
 
174
- request_method = opts[:method] ||= 'post'
176
+ request_method = opts[:method] || 'post'
175
177
  request_uri = Core::Utilities.parse_uri(opts[:uri] || opts[:url] || uri)
176
178
  request_path = (opts[:path] || request_uri.path || path).chomp('?')
177
179
  request_query = Core::Utilities.parse_query((opts[:query] || request_uri.query || query))
178
- request_headers = opts[:headers] ||= {}
179
- request_body = opts[:body] ||= nil
180
+ request_headers = opts[:headers] || {}
181
+ request_body = opts[:body] || nil
180
182
 
181
183
  {
182
184
  method: request_method,
@@ -4,20 +4,19 @@ require 'dry-validation'
4
4
 
5
5
  module NetHTTP
6
6
  class Request
7
- Schema = Dry::Validation.Schema do
8
- configure do
9
- def name
10
- 'NetHTTP::Request::Schema'
11
- end
7
+ class Schema < Dry::Validation::Contract
8
+ schema do
9
+ required(:method).value(:string).filled
10
+ optional(:headers).value(:hash)
11
+ optional(:body)
12
+ optional(:query).filled
13
+ optional(:uri).value(:string).filled
14
+ optional(:url).value(:string).filled
15
+ optional(:path).value(:string).filled
12
16
  end
13
17
 
14
- required(:method).filled(type?: String)
15
- optional(:headers).maybe(type?: Hash)
16
- optional(:body).maybe
17
- optional(:query).filled
18
-
19
- rule(if_url_and_uri_are_nil_must_provide_path: [:uri, :url, :path]) do |uri, url, path|
20
- uri.empty?.then(url.empty?.then(path.filled?))
18
+ rule(:uri, :url, :path) do
19
+ key.failure('uri, url, & path cannot all be nil') if (values[:uri].nil? && values[:url].nil? && values[:path].nil?)
21
20
  end
22
21
  end
23
22
 
@@ -32,52 +32,37 @@ module NetHTTP
32
32
  log_response
33
33
  end
34
34
 
35
- alias resp response
36
-
37
35
  def body=
38
36
  @body = response.body
39
37
  end
40
38
 
41
- alias resp_body body
42
- alias response_body body
43
-
44
39
  def body_obj=
45
40
  @body_obj = {}
46
41
 
47
- if valid_json?
48
- begin
49
- @body_obj = NetHTTP::Core::Utilities.json_2_hash(body, 'symbol', logger)
50
- rescue JSON::ParserError => error
51
- logger.debug(error)
52
- end
53
- elsif valid_xml? || valid_html?
54
- begin
55
- @body_obj = NetHTTP::Core::Utilities.xml_2_hash(body, 'symbol', logger)
56
- rescue Nokogiri::XML::SyntaxError => error
57
- logger.debug(error)
58
- end
42
+ if content_type.to_s.downcase.include?('json')
43
+ @body_obj = parse_json(body, logger)
44
+ elsif content_type.to_s.downcase.include?('xml') || content_type.to_s.downcase.include?('html')
45
+ @body_obj = parse_xml(body, logger)
59
46
  end
60
- end
61
47
 
62
- alias resp_body_obj body_obj
63
- alias response_body_obj body_obj
48
+ @body_obj
49
+ end
64
50
 
65
51
  def body_os=
66
52
  @body_os = JSON.parse(body_obj.to_json, object_class: OpenStruct)
67
53
  end
68
54
 
69
- alias resp_body_os body_os
70
- alias response_body_os body_os
71
- alias body_open_struct body_os
72
- alias resp_body_open_struct body_os
73
- alias response_body_open_struct body_os
74
-
75
55
  def code=
76
56
  @code = response.code
77
57
  end
78
58
 
79
- alias resp_code code
80
- alias response_code code
59
+ def content_type
60
+ content_type = headers_hash.select { |k,v| k.to_s.downcase == 'content_type' }
61
+
62
+ return nil if content_type.empty?
63
+
64
+ content_type[:content_type]
65
+ end
81
66
 
82
67
  def headers=
83
68
  @headers = {}
@@ -86,35 +71,40 @@ module NetHTTP
86
71
  end
87
72
  end
88
73
 
89
- alias resp_headers headers
90
- alias response_headers headers
91
-
92
74
  def headers_hash=
93
- @headers_hash = {}
94
- NetHTTP::Core::Utilities.convert_hash_keys(
75
+ @headers_hash = NetHTTP::Core::Utilities.convert_hash_keys(
95
76
  object: headers,
96
77
  format: 'snake',
97
78
  type: 'symbol'
98
79
  )
99
80
  end
100
81
 
101
- alias resp_headers_hash headers_hash
102
- alias response_headers_hash headers_hash
103
-
104
82
  def headers_os=
105
83
  @headers_os = JSON.parse(headers_hash.to_json, object_class: OpenStruct)
106
84
  end
107
85
 
108
- alias resp_headers_os headers_os
109
- alias response_headers_os headers_os
110
- alias headers_open_struct headers_os
111
- alias resp_headers_struct headers_os
112
- alias response_headers_open_struct headers_os
113
-
114
86
  def response=(response)
115
87
  @response = response
116
88
  end
117
89
 
90
+ def parse_json(body, logger)
91
+ begin
92
+ NetHTTP::Core::Utilities.json_2_hash(body, 'symbol', logger)
93
+ rescue JSON::ParserError => err
94
+ logger.debug(err)
95
+ return {}
96
+ end
97
+ end
98
+
99
+ def parse_xml(body, logger)
100
+ begin
101
+ NetHTTP::Core::Utilities.xml_2_hash(body, 'symbol', logger)
102
+ rescue Nokogiri::XML::SyntaxError => err
103
+ logger.debug(err)
104
+ return {}
105
+ end
106
+ end
107
+
118
108
  def valid_json?
119
109
  NetHTTP::Core::Utilities.valid_json?(body, logger)
120
110
  end
data/lib/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module NetHTTP
4
- VERSION = '1.1.4'
4
+ VERSION = '1.6.0'
5
5
  end
metadata CHANGED
@@ -1,57 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rb-net_http-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.4
4
+ version: 1.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ryan Bostian
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-06-04 00:00:00.000000000 Z
11
+ date: 2021-03-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '5.1'
19
+ version: '0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '='
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '5.1'
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: dry-validation
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 0.13.0
33
+ version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 0.13.0
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: nokogiri
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: 1.10.0
47
+ version: '0'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: 1.10.0
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rexml
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: bundler
57
71
  requirement: !ruby/object:Gem::Requirement
@@ -279,7 +293,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
279
293
  - !ruby/object:Gem::Version
280
294
  version: '0'
281
295
  requirements: []
282
- rubygems_version: 3.0.1
296
+ rubygems_version: 3.2.3
283
297
  signing_key:
284
298
  specification_version: 4
285
299
  summary: A Simple Ruby HTTP Client