fedex 3.10.1 → 3.10.11
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 +7 -0
- data/Readme.md +5 -1
- data/fedex.gemspec +3 -3
- data/lib/fedex/request/base.rb +22 -1
- data/lib/fedex/request/shipment.rb +1 -0
- data/lib/fedex/version.rb +1 -1
- metadata +29 -45
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 71f42b0e4670b52d75f45239d4c079a48a04e765
|
4
|
+
data.tar.gz: cbb86921e68cca947eca61a7de136782ca8218e1
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 3e8fb6f4b18b80ae1cc47bad9ea971a731c35707d6816cbcb97720ea60bbdb5feaae76303ca448b7ac8b1726c067d9fd6756a9575d93573021e5b7f9fe98b568
|
7
|
+
data.tar.gz: 4ffb159aa7bdf4cb49055dcab91d82ff7eb47b0c91ab8aa82f4903625c7a8ab87f7db4f5637a1c9040cc8ab6eb125cb389841376df1924f085563c8a90022a98
|
data/Readme.md
CHANGED
@@ -1,3 +1,6 @@
|
|
1
|
+
# IMPORTANT!!
|
2
|
+
I plan a major refactor to this gem. Sorry but at this moment I am not merging PR's. I appreciate your effort but need some time to catch up. Thanks!!
|
3
|
+
|
1
4
|
# Fedex Rate Web Service
|
2
5
|
## Fedex API Shipment Version: 13
|
3
6
|
|
@@ -353,7 +356,8 @@ To request a pickup:
|
|
353
356
|
pickup = fedex.pickup(:carrier_code => 'FDXE',
|
354
357
|
:packages => {:weight => {:units => "LB", :value => 10}, :count => 2},
|
355
358
|
:ready_timestamp => Date.today.to_datetime + 1.375,
|
356
|
-
:close_time => Date.today.to_time + 60 * 60 * 17
|
359
|
+
:close_time => Date.today.to_time + 60 * 60 * 17,
|
360
|
+
:country_relationship => "DOMESTIC")
|
357
361
|
puts pickup[:pickup_confirmation_number]
|
358
362
|
```
|
359
363
|
|
data/fedex.gemspec
CHANGED
@@ -16,11 +16,11 @@ Gem::Specification.new do |s|
|
|
16
16
|
|
17
17
|
s.license = 'MIT'
|
18
18
|
|
19
|
-
s.add_dependency 'httparty', '>= 0.
|
19
|
+
s.add_dependency 'httparty', '>= 0.14.0'
|
20
20
|
s.add_dependency 'nokogiri', '>= 1.5.6'
|
21
21
|
|
22
|
-
s.add_development_dependency "rspec", '~> 3.
|
23
|
-
s.add_development_dependency 'vcr', '~> 2.0
|
22
|
+
s.add_development_dependency "rspec", '~> 3.1'
|
23
|
+
s.add_development_dependency 'vcr', '~> 2.0'
|
24
24
|
s.add_development_dependency 'webmock', '~> 1.8.0'
|
25
25
|
s.add_development_dependency 'pry'
|
26
26
|
s.add_development_dependency 'rake'
|
data/lib/fedex/request/base.rb
CHANGED
@@ -51,6 +51,7 @@ module Fedex
|
|
51
51
|
requires!(options, :shipper, :recipient, :packages)
|
52
52
|
@credentials = credentials
|
53
53
|
@shipper, @recipient, @packages, @service_type, @customs_clearance_detail, @debug = options[:shipper], options[:recipient], options[:packages], options[:service_type], options[:customs_clearance_detail], options[:debug]
|
54
|
+
@origin = options[:origin]
|
54
55
|
@debug = ENV['DEBUG'] == 'true'
|
55
56
|
@shipping_options = options[:shipping_options] ||={}
|
56
57
|
@payment_options = options[:payment_options] ||={}
|
@@ -142,6 +143,26 @@ module Fedex
|
|
142
143
|
}
|
143
144
|
end
|
144
145
|
|
146
|
+
# Add shipper to xml request
|
147
|
+
def add_origin(xml)
|
148
|
+
xml.Origin{
|
149
|
+
xml.Contact{
|
150
|
+
xml.PersonName @origin[:name]
|
151
|
+
xml.CompanyName @origin[:company]
|
152
|
+
xml.PhoneNumber @origin[:phone_number]
|
153
|
+
}
|
154
|
+
xml.Address {
|
155
|
+
Array(@origin[:address]).take(2).each do |address_line|
|
156
|
+
xml.StreetLines address_line
|
157
|
+
end
|
158
|
+
xml.City @origin[:city]
|
159
|
+
xml.StateOrProvinceCode @origin[:state]
|
160
|
+
xml.PostalCode @origin[:postal_code]
|
161
|
+
xml.CountryCode @origin[:country_code]
|
162
|
+
}
|
163
|
+
}
|
164
|
+
end
|
165
|
+
|
145
166
|
# Add recipient to xml request
|
146
167
|
def add_recipient(xml)
|
147
168
|
xml.Recipient{
|
@@ -351,7 +372,7 @@ module Fedex
|
|
351
372
|
|
352
373
|
# Parse response, convert keys to underscore symbols
|
353
374
|
def parse_response(response)
|
354
|
-
response = sanitize_response_keys(response)
|
375
|
+
response = sanitize_response_keys(response.parsed_response)
|
355
376
|
end
|
356
377
|
|
357
378
|
# Recursively sanitizes the response object by cleaning up any hash keys.
|
@@ -44,6 +44,7 @@ module Fedex
|
|
44
44
|
xml.PackagingType @shipping_options[:packaging_type] ||= "YOUR_PACKAGING"
|
45
45
|
add_total_weight(xml) if @mps.has_key? :total_weight
|
46
46
|
add_shipper(xml)
|
47
|
+
add_origin(xml) if @origin
|
47
48
|
add_recipient(xml)
|
48
49
|
add_shipping_charges_payment(xml)
|
49
50
|
add_special_services(xml) if @shipping_options[:return_reason] || @shipping_options[:cod] || @shipping_options[:saturday_delivery]
|
data/lib/fedex/version.rb
CHANGED
metadata
CHANGED
@@ -1,126 +1,111 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fedex
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.10.
|
5
|
-
prerelease:
|
4
|
+
version: 3.10.11
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Jazmin Schroeder
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2017-10-10 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: httparty
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
|
-
version: 0.
|
19
|
+
version: 0.14.0
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
|
-
version: 0.
|
26
|
+
version: 0.14.0
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: nokogiri
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - ">="
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: 1.5.6
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - ">="
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: 1.5.6
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: rspec
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- - ~>
|
45
|
+
- - "~>"
|
52
46
|
- !ruby/object:Gem::Version
|
53
|
-
version: 3.
|
47
|
+
version: '3.1'
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- - ~>
|
52
|
+
- - "~>"
|
60
53
|
- !ruby/object:Gem::Version
|
61
|
-
version: 3.
|
54
|
+
version: '3.1'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: vcr
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
|
-
- - ~>
|
59
|
+
- - "~>"
|
68
60
|
- !ruby/object:Gem::Version
|
69
|
-
version: 2.0
|
61
|
+
version: '2.0'
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
|
-
- - ~>
|
66
|
+
- - "~>"
|
76
67
|
- !ruby/object:Gem::Version
|
77
|
-
version: 2.0
|
68
|
+
version: '2.0'
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: webmock
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
|
-
- - ~>
|
73
|
+
- - "~>"
|
84
74
|
- !ruby/object:Gem::Version
|
85
75
|
version: 1.8.0
|
86
76
|
type: :development
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
|
-
- - ~>
|
80
|
+
- - "~>"
|
92
81
|
- !ruby/object:Gem::Version
|
93
82
|
version: 1.8.0
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
84
|
name: pry
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
86
|
requirements:
|
99
|
-
- -
|
87
|
+
- - ">="
|
100
88
|
- !ruby/object:Gem::Version
|
101
89
|
version: '0'
|
102
90
|
type: :development
|
103
91
|
prerelease: false
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
93
|
requirements:
|
107
|
-
- -
|
94
|
+
- - ">="
|
108
95
|
- !ruby/object:Gem::Version
|
109
96
|
version: '0'
|
110
97
|
- !ruby/object:Gem::Dependency
|
111
98
|
name: rake
|
112
99
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
100
|
requirements:
|
115
|
-
- -
|
101
|
+
- - ">="
|
116
102
|
- !ruby/object:Gem::Version
|
117
103
|
version: '0'
|
118
104
|
type: :development
|
119
105
|
prerelease: false
|
120
106
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
107
|
requirements:
|
123
|
-
- -
|
108
|
+
- - ">="
|
124
109
|
- !ruby/object:Gem::Version
|
125
110
|
version: '0'
|
126
111
|
description: Provides an interface to Fedex Web Services
|
@@ -130,8 +115,8 @@ executables: []
|
|
130
115
|
extensions: []
|
131
116
|
extra_rdoc_files: []
|
132
117
|
files:
|
133
|
-
- .gitignore
|
134
|
-
- .rspec
|
118
|
+
- ".gitignore"
|
119
|
+
- ".rspec"
|
135
120
|
- Gemfile
|
136
121
|
- Rakefile
|
137
122
|
- Readme.md
|
@@ -178,27 +163,26 @@ files:
|
|
178
163
|
homepage: https://github.com/jazminschroeder/fedex
|
179
164
|
licenses:
|
180
165
|
- MIT
|
166
|
+
metadata: {}
|
181
167
|
post_install_message:
|
182
168
|
rdoc_options: []
|
183
169
|
require_paths:
|
184
170
|
- lib
|
185
171
|
required_ruby_version: !ruby/object:Gem::Requirement
|
186
|
-
none: false
|
187
172
|
requirements:
|
188
|
-
- -
|
173
|
+
- - ">="
|
189
174
|
- !ruby/object:Gem::Version
|
190
175
|
version: '0'
|
191
176
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
192
|
-
none: false
|
193
177
|
requirements:
|
194
|
-
- -
|
178
|
+
- - ">="
|
195
179
|
- !ruby/object:Gem::Version
|
196
180
|
version: '0'
|
197
181
|
requirements: []
|
198
182
|
rubyforge_project: fedex
|
199
|
-
rubygems_version:
|
183
|
+
rubygems_version: 2.5.1
|
200
184
|
signing_key:
|
201
|
-
specification_version:
|
185
|
+
specification_version: 4
|
202
186
|
summary: Fedex Web Services
|
203
187
|
test_files:
|
204
188
|
- spec/config/fedex_credentials.example.yml
|