easypost 3.1.3 → 3.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CHANGELOG +7 -0
- data/VERSION +1 -1
- data/lib/easypost.rb +1 -1
- data/lib/easypost/address.rb +5 -3
- data/lib/easypost/error.rb +3 -2
- data/lib/easypost/object.rb +1 -1
- data/lib/easypost/shipment.rb +2 -6
- data/lib/easypost/util.rb +5 -0
- metadata +3 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 3f2b1945f7283b88880be5fa9700332289d7007137056113d6223a61e59be79a
|
4
|
+
data.tar.gz: a168444a606c919ca7a5f1a940040b2822d25ee88d555ca7a11fb289a3e06962
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e53924a901d7dc9f25272991d589d7c08b1f28ccba941792925d9fd6ad8b65a57568caf5a15062e227086a2c9d997d85d72d655b21c1be08addc47093a956bff
|
7
|
+
data.tar.gz: 6bf95b960ec71c8b79effae947a38fd11a902fba63d98db28b6f7d448a05b4914f7f8a56ffc33452d8660e5898b60a0f953de10f7be0764b9b2b40058034ec4c
|
data/CHANGELOG
CHANGED
@@ -1,3 +1,10 @@
|
|
1
|
+
=== 3.1.4 2020-09-29
|
2
|
+
|
3
|
+
* Don't modify params passed into Address#create (#78; thanks @TheRusskiy)
|
4
|
+
* Don't modify `carriers` and `services` parameters to `Shipment.lowest_rate` (#71 / #103, thanks @vladvinnikov and @jurisgalang)
|
5
|
+
* When constructing an easypost object, convert the key to a string (#102; thanks @Geesu)
|
6
|
+
* Expose the raw HTTP response as `#http_body` on `EasyPost::Error` objects (#101; thanks @Geesu)
|
7
|
+
|
1
8
|
=== 3.1.3 2020-06-26
|
2
9
|
|
3
10
|
* Fix bug causing Authorization header to be included in User-Agent header. All users must upgrade.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.1.
|
1
|
+
3.1.4
|
data/lib/easypost.rb
CHANGED
@@ -131,7 +131,7 @@ module EasyPost
|
|
131
131
|
|
132
132
|
if (400..599).include? response.code.to_i
|
133
133
|
error = JSON.parse(response.body)["error"]
|
134
|
-
raise Error.new(error["message"], response.code.to_i, error["code"], error["errors"])
|
134
|
+
raise Error.new(error["message"], response.code.to_i, error["code"], error["errors"], response.body)
|
135
135
|
end
|
136
136
|
|
137
137
|
if response["Content-Type"].include? "application/json"
|
data/lib/easypost/address.rb
CHANGED
@@ -5,9 +5,11 @@ module EasyPost
|
|
5
5
|
def self.create(params={}, api_key=nil)
|
6
6
|
url = self.url
|
7
7
|
|
8
|
+
address = params.reject { |k,_| k == :verify || k == :verify_strict }
|
9
|
+
|
8
10
|
if params[:verify] || params[:verify_strict]
|
9
|
-
verify = params
|
10
|
-
verify_strict = params
|
11
|
+
verify = params[:verify] || []
|
12
|
+
verify_strict = params[:verify_strict] || []
|
11
13
|
|
12
14
|
url += "?"
|
13
15
|
verify.each do |verification|
|
@@ -18,7 +20,7 @@ module EasyPost
|
|
18
20
|
end
|
19
21
|
end
|
20
22
|
|
21
|
-
response = EasyPost.make_request(:post, url, api_key, {address:
|
23
|
+
response = EasyPost.make_request(:post, url, api_key, {address: address})
|
22
24
|
return Util.convert_to_easypost_object(response, api_key)
|
23
25
|
end
|
24
26
|
|
data/lib/easypost/error.rb
CHANGED
@@ -3,15 +3,17 @@ module EasyPost
|
|
3
3
|
attr_reader :message
|
4
4
|
attr_reader :status
|
5
5
|
attr_reader :http_status # deprecated
|
6
|
+
attr_reader :http_body
|
6
7
|
attr_reader :code
|
7
8
|
attr_reader :errors
|
8
9
|
|
9
|
-
def initialize(message = nil, status = nil, code = nil, errors = nil)
|
10
|
+
def initialize(message = nil, status = nil, code = nil, errors = nil, http_body = nil)
|
10
11
|
@message = message
|
11
12
|
@status = status
|
12
13
|
@http_status = status # deprecated
|
13
14
|
@code = code
|
14
15
|
@errors = errors
|
16
|
+
@http_body = http_body
|
15
17
|
|
16
18
|
super(message)
|
17
19
|
end
|
@@ -29,4 +31,3 @@ module EasyPost
|
|
29
31
|
end
|
30
32
|
end
|
31
33
|
end
|
32
|
-
|
data/lib/easypost/object.rb
CHANGED
@@ -42,7 +42,7 @@ module EasyPost
|
|
42
42
|
end
|
43
43
|
|
44
44
|
values.each do |k, v|
|
45
|
-
@values[k] = Util.convert_to_easypost_object(v, api_key, self, k)
|
45
|
+
@values[k.to_s] = Util.convert_to_easypost_object(v, api_key, self, k)
|
46
46
|
@transient_values.delete(k)
|
47
47
|
@unsaved_values.delete(k)
|
48
48
|
end
|
data/lib/easypost/shipment.rb
CHANGED
@@ -66,9 +66,7 @@ module EasyPost
|
|
66
66
|
|
67
67
|
self.get_rates unless self.rates
|
68
68
|
|
69
|
-
carriers =
|
70
|
-
carriers.map!(&:downcase)
|
71
|
-
carriers.map!(&:strip)
|
69
|
+
carriers = EasyPost::Util.normalize_string_list(carriers)
|
72
70
|
|
73
71
|
negative_carriers = []
|
74
72
|
carriers_copy = carriers.clone
|
@@ -79,9 +77,7 @@ module EasyPost
|
|
79
77
|
end
|
80
78
|
end
|
81
79
|
|
82
|
-
services =
|
83
|
-
services.map!(&:downcase)
|
84
|
-
services.map!(&:strip)
|
80
|
+
services = EasyPost::Util.normalize_string_list(services)
|
85
81
|
|
86
82
|
negative_services = []
|
87
83
|
services_copy = services.clone
|
data/lib/easypost/util.rb
CHANGED
@@ -15,6 +15,11 @@ module EasyPost
|
|
15
15
|
end
|
16
16
|
end
|
17
17
|
|
18
|
+
def self.normalize_string_list(lst)
|
19
|
+
lst = lst.is_a?(String) ? lst.split(',') : Array(lst)
|
20
|
+
lst.map(&:to_s).map(&:downcase).map(&:strip)
|
21
|
+
end
|
22
|
+
|
18
23
|
def self.convert_to_easypost_object(response, api_key, parent=nil, name=nil)
|
19
24
|
types = {
|
20
25
|
'Address' => Address,
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: easypost
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.1.
|
4
|
+
version: 3.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jake Epstein
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2020-
|
13
|
+
date: 2020-09-30 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: pry
|
@@ -147,8 +147,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
147
147
|
- !ruby/object:Gem::Version
|
148
148
|
version: '0'
|
149
149
|
requirements: []
|
150
|
-
|
151
|
-
rubygems_version: 2.2.2
|
150
|
+
rubygems_version: 3.0.6
|
152
151
|
signing_key:
|
153
152
|
specification_version: 4
|
154
153
|
summary: EasyPost Ruby Client Library
|