proxima 3.1.1 → 3.2.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
  SHA1:
3
- metadata.gz: ac7973b121306eac03a5faac3d8edbfc596e6b46
4
- data.tar.gz: b898f1c981d24c8385c7e87f35ea8a81a878a7c9
3
+ metadata.gz: dc5fef2000fea4d26cb1121c922f54c8c597359d
4
+ data.tar.gz: 3dc3c0261a2d0ea7f25b6fb930544e26121a54ce
5
5
  SHA512:
6
- metadata.gz: b921f670744bae9735861cfbbad4b2588fd6ab3fc07f3035a30b9309b7db9d0997b2d8d10da9fcf549a9ea4ce1ea18d7e56930604218e964ad9c627a36461282
7
- data.tar.gz: 6ad7ae30cc035c9ede3b1e3a2ec2f2e480fdc9cd4a1f5e3548fccdd4af6dc0181b5599b9a1abaf189f9b05a588e9c560f4a005d558eecc63b3155bacdf1492a0
6
+ metadata.gz: '092d67b1b7b261544d7ac8ebedfa7a20abb3cf992d05e5b7306cdd78358194d8aa20a8a41c87d1a98d07bf0ee7a0144a7d81941d183e0042cf5e14bc1fd3c38a'
7
+ data.tar.gz: cae0b8a3cd94d4155f064a322ab0f72b20ae250bb32df125a87fd386ff35094ef6d5be3df9d9de7f86c47a3a6932da2938d11ef69a9f3cee09e992586989371a
@@ -19,22 +19,21 @@ module Proxima
19
19
  opts[:json].to_json
20
20
  elsif opts[:body]
21
21
  opts[:body]
22
- else
23
- ''
24
22
  end
25
23
 
26
24
  headers.merge! @api.headers
27
25
 
28
- @headers = headers.map{ |name, val| [to_header(name), val.to_s] }.to_h
29
- query_str = opts[:query] ? "?#{opts[:query].to_query}" : ''
30
- @uri = URI.join @api.base_uri, path, query_str
31
- @http = Net::HTTP.new @uri.host, @uri.port
32
- @http.use_ssl = @uri.scheme == "https"
33
- @http.verify_mode = OpenSSL::SSL::VERIFY_PEER if @uri.scheme == "https"
26
+ @headers = headers.map{ |name, val| [to_header(name), val.to_s] }.to_h
27
+ query_str = opts[:query] ? "?#{opts[:query].to_query}" : ''
28
+ @uri = URI.join(@api.base_uri, path, query_str)
34
29
  end
35
30
 
36
31
  def response
37
- raw_response = @http.send_request @method, @uri, @body, @headers
32
+ raw_response = HTTP
33
+ .use(:auto_deflate)
34
+ .headers(@headers)
35
+ .request @method, @uri, body: @body
36
+
38
37
  Response.new self, raw_response
39
38
  end
40
39
 
@@ -11,31 +11,23 @@ module Proxima
11
11
  end
12
12
 
13
13
  def json
14
- begin
15
- JSON.parse @raw_response.body if @raw_response.body
16
- rescue => e
17
- raise "Failed to parse response body as JSON string: #{e.message}"
18
- end
14
+ @raw_response.parse 'application/json'
19
15
  end
20
16
 
21
17
  def body
22
- @raw_response.body
18
+ @raw_response.body.to_s
23
19
  end
24
20
 
25
21
  def code
26
- @raw_response.code.to_i
22
+ @raw_response.code
27
23
  end
28
24
 
29
25
  def message
30
- @raw_response.message
31
- end
32
-
33
- def http_version
34
- @raw_response.http_version
26
+ @raw_response.reason
35
27
  end
36
28
 
37
29
  def headers
38
- @headers ||= @raw_response.each.to_h.map { |name, val| [from_header(name), val] }.to_h
30
+ @headers ||= @raw_response.headers.map{ |name, value| [from_header(name), value] }.to_h
39
31
  end
40
32
 
41
33
  private
@@ -1,5 +1,5 @@
1
1
 
2
2
 
3
3
  module Proxima
4
- VERSION = "3.1.1"
4
+ VERSION = "3.2.0"
5
5
  end
data/lib/proxima.rb CHANGED
@@ -1,4 +1,4 @@
1
- require 'net/http'
1
+ require 'http'
2
2
  require 'active_model'
3
3
  require 'proxima/version'
4
4
  require 'proxima/types'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: proxima
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.1
4
+ version: 3.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Hurst
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-29 00:00:00.000000000 Z
11
+ date: 2017-06-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -52,6 +52,20 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '3.5'
55
+ - !ruby/object:Gem::Dependency
56
+ name: http
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '2.2'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '2.2'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: activemodel
57
71
  requirement: !ruby/object:Gem::Requirement