omniship 0.4.0 → 0.4.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d9f5ce46f050f67d8b750e29ae85c457dc30bde0
4
- data.tar.gz: fedf5e0c3e0408636c1ba156781eb9088df4f3ea
3
+ metadata.gz: a8f62b80af3d9fdf1b1af4981f2febaa4353ada0
4
+ data.tar.gz: dbdf9dcb452ed711814cba5bb7098146900c895d
5
5
  SHA512:
6
- metadata.gz: 473d38ea1ef885e530317a3b68ae013d0717406dd176ee8bca0e9ff2abfcfbc45780c211da29a62567ac2c462a8290ea6c5e9ff34de8eadc247bcdf27650b068
7
- data.tar.gz: 999466fd9b82fb309c5327af767df136a364066b2a64c7755abb99f440d9535d31a156772fcb1844ee800bad661d41837ad5cc0abdd1de3ee4a61bafed925631
6
+ metadata.gz: 485e21ba04c04e67e39e968886d5662f55c9e51cece0730d93dd6f7fc5e6ca31f5786fee61cbcdcb5cded36dfec6daf120c33d837254218da83da23dfeb6c5bf
7
+ data.tar.gz: f8eb55d6f93c8f739ba606bb4672cad1898a614e767af7d57729e5998480cea54663176ffdd15052eb8743ed8bea8822dff27822197fbefd540785ce6b19081b
data/README.markdown CHANGED
@@ -1,6 +1,6 @@
1
- [![Gem Version](https://badge.fury.io/rb/omniship.png)](http://badge.fury.io/rb/omniship) [![Code Climate](https://codeclimate.com/github/Digi-Cazter/omniship.png)](https://codeclimate.com/github/Digi-Cazter/omniship)
1
+ [![Gem Version](https://badge.fury.io/rb/omniship.png)](http://badge.fury.io/rb/omniship) [![Code Climate](https://codeclimate.com/github/Digi-Cazter/omniship.png)](https://codeclimate.com/github/Digi-Cazter/omniship)
2
2
 
3
- # Omniship
3
+ # Omniship
4
4
 
5
5
  This gem is under active development, I'm only in the Alpha stage right now, so keep checking back for updates.
6
6
 
@@ -9,53 +9,62 @@ This library has been created to make web requests to common shipping carriers u
9
9
  ## Supported Shipping Carriers
10
10
 
11
11
  * [UPS](http://www.ups.com)
12
+ - Create Shipment
13
+ - Void Shipment
14
+ - Get Rates
15
+ - Validate Address
16
+ - Validate Address with Street
17
+ * [FedEx](http://www.fedex.com) (These listed features work, but still need more options added)
18
+ - Create Shipment
19
+ - Void Shipment
20
+ - Get Rates
21
+ - Shipment Tracking
12
22
  * [USPS](http://www.usps.com) COMING SOON!
13
- * [FedEx](http://www.fedex.com) COMING SOON!
14
23
 
15
24
  ## Simple example snippets
16
25
  ### UPS Code Example ###
17
26
  To run in test mode during development, pass :test => true as an option
18
27
  into create_shipment and accept_shipment.
19
28
 
20
- def create_shipment
21
- # If you have created the omniship.yml config file
22
- @config = OMNISHIP_CONFIG[Rails.env]['ups']
23
- shipment = create_ups_shipment
24
- end
25
-
26
- def create_ups_shipment
27
- # If using the yml config
28
- ups = Omniship::UPS.new
29
- # Else just pass in the credentials
30
- ups = Omniship::UPS.new(:login => @user, :password => @password, :key => @key)
31
- send_options = {}
32
- send_options[:origin_account] = @config["account"] # Or just put the shipper account here
33
- send_options[:service] = "03"
34
- response = ups.create_shipment(origin, destination, package, options = send_options)
35
- return ups.accept_shipment(response)
36
- end
37
-
38
- def origin
39
- address = {}
40
- address[:name] = "My House"
41
- address[:address1] = "555 Diagonal"
42
- address[:city] = "Saint George"
43
- address[:state] = "UT"
44
- address[:zip] = "84770"
45
- address[:country] = "USA"
46
- return Omniship::Address.new(address)
47
- end
48
-
49
- def destination
50
- address = {}
51
- address[:company_name] = "Wal-Mart"
52
- address[:address1] = "555 Diagonal"
53
- address[:city] = "Saint George"
54
- address[:state] = "UT"
55
- address[:zip] = "84770"
56
- address[:country] = "USA"
57
- return Omniship::Address.new(address)
58
- end
29
+ def create_shipment
30
+ # If you have created the omniship.yml config file
31
+ @config = OMNISHIP_CONFIG[Rails.env]['ups']
32
+ shipment = create_ups_shipment
33
+ end
34
+
35
+ def create_ups_shipment
36
+ # If using the yml config
37
+ ups = Omniship::UPS.new
38
+ # Else just pass in the credentials
39
+ ups = Omniship::UPS.new(:login => @user, :password => @password, :key => @key)
40
+ send_options = {}
41
+ send_options[:origin_account] = @config["account"] # Or just put the shipper account here
42
+ send_options[:service] = "03"
43
+ response = ups.create_shipment(origin, destination, package, options = send_options)
44
+ return ups.accept_shipment(response)
45
+ end
46
+
47
+ def origin
48
+ address = {}
49
+ address[:name] = "My House"
50
+ address[:address1] = "555 Diagonal"
51
+ address[:city] = "Saint George"
52
+ address[:state] = "UT"
53
+ address[:zip] = "84770"
54
+ address[:country] = "USA"
55
+ return Omniship::Address.new(address)
56
+ end
57
+
58
+ def destination
59
+ address = {}
60
+ address[:company_name] = "Wal-Mart"
61
+ address[:address1] = "555 Diagonal"
62
+ address[:city] = "Saint George"
63
+ address[:state] = "UT"
64
+ address[:zip] = "84770"
65
+ address[:country] = "USA"
66
+ return Omniship::Address.new(address)
67
+ end
59
68
 
60
69
  def packages
61
70
  # UPS can handle a single package or multiple packages
@@ -25,9 +25,9 @@ module Omniship #:nodoc:
25
25
  alias_method :company, :company_name
26
26
 
27
27
  def initialize(options = {})
28
- @country = (options[:country].nil? or options[:country].is_a?(ActiveMerchant::Country)) ?
28
+ @country = (options[:country].nil? or options[:country].is_a?(ActiveUtils::Country)) ?
29
29
  options[:country] :
30
- ActiveMerchant::Country.find(options[:country])
30
+ ActiveUtils::Country.find(options[:country])
31
31
  @postal_code = options[:postal_code] || options[:postal] || options[:zip]
32
32
  @province = options[:province] || options[:state] || options[:territory] || options[:region]
33
33
  @city = options[:city]
@@ -1,14 +1,14 @@
1
- module Omniship
1
+ module Omniship
2
2
  class Carrier
3
-
4
- include ActiveMerchant::RequiresParameters
5
- include ActiveMerchant::PostsData
3
+
4
+ include ActiveUtils::RequiresParameters
5
+ include ActiveUtils::PostsData
6
6
  include Quantified
7
-
7
+
8
8
  attr_reader :last_request
9
9
  attr_accessor :test_mode
10
10
  alias_method :test_mode?, :test_mode
11
-
11
+
12
12
  # Credentials should be in options hash under keys :login, :password and/or :key.
13
13
  def initialize(options = {})
14
14
  #requirements.each {|key| requires!(options, key)}
@@ -22,11 +22,11 @@ module Omniship
22
22
  def requirements
23
23
  []
24
24
  end
25
-
25
+
26
26
  # Override with whatever you need to get the rates
27
27
  def find_rates(origin, destination, packages, options = {})
28
28
  end
29
-
29
+
30
30
  # Validate credentials with a call to the API. By default this just does a find_rates call
31
31
  # with the orgin and destination both as the carrier's default_location. Override to provide
32
32
  # alternate functionality, such as checking for test_mode to use test servers, etc.
@@ -38,17 +38,17 @@ module Omniship
38
38
  else
39
39
  true
40
40
  end
41
-
41
+
42
42
  def maximum_weight
43
43
  Mass.new(150, :pounds)
44
44
  end
45
-
45
+
46
46
  protected
47
-
47
+
48
48
  def node_text_or_nil(xml_node)
49
49
  xml_node ? xml_node.text : nil
50
50
  end
51
-
51
+
52
52
  # Override in subclasses for non-U.S.-based carriers.
53
53
  def self.default_location
54
54
  Address.new( :country => 'US',
@@ -60,7 +60,7 @@ module Omniship
60
60
  :phone => '1-310-285-1013',
61
61
  :fax => '1-310-275-8159')
62
62
  end
63
-
63
+
64
64
  # Use after building the request to save for later inspection. Probably won't ever be overridden.
65
65
  def save_request(r)
66
66
  @last_request = r
@@ -138,6 +138,8 @@ module Omniship
138
138
  xml.Intermediate "0"
139
139
  xml.Minor "0"
140
140
  }
141
+ xml.ReturnTransitAndCommit options[:return_transit_and_commit] || false
142
+ xml.VariableOptions "SATURDAY_DELIVERY"
141
143
  xml.RequestedShipment {
142
144
  xml.ShipTimestamp options[:ship_date] || DateTime.now.strftime
143
145
  xml.DropoffType options[:dropoff_type] || 'REGULAR_PICKUP'
@@ -157,6 +159,14 @@ module Omniship
157
159
  xml.Units (imperial ? 'LB' : 'KG')
158
160
  xml.Value ((imperial ? pkg.weight : pkg.weight/2.2).to_f)
159
161
  }
162
+ xml.SpecialServicesRequested {
163
+ if options[:without_signature]
164
+ xml.SpecialServiceTypes "SIGNATURE_OPTION"
165
+ xml.SignatureOptionDetail {
166
+ xml.OptionType "NO_SIGNATURE_REQUIRED"
167
+ }
168
+ end
169
+ }
160
170
  # xml.Dimensions {
161
171
  # [:length, :width, :height].each do |axis|
162
172
  # name = axis.to_s.capitalize
@@ -213,6 +223,7 @@ module Omniship
213
223
  }
214
224
  end
215
225
  }
226
+ # TODO: Add options to change the label specifications
216
227
  xml.LabelSpecification {
217
228
  xml.LabelFormatType 'COMMON2D'
218
229
  xml.ImageType 'PDF'
@@ -227,6 +238,14 @@ module Omniship
227
238
  xml.Units (imperial ? 'LB' : 'KG')
228
239
  xml.Value ((imperial ? pkg.weight : pkg.weight/2.2).to_f)
229
240
  }
241
+ xml.SpecialServicesRequested {
242
+ if options[:without_signature]
243
+ xml.SpecialServiceTypes "SIGNATURE_OPTION"
244
+ xml.SignatureOptionDetail {
245
+ xml.OptionType "NO_SIGNATURE_REQUIRED"
246
+ }
247
+ end
248
+ }
230
249
  # xml.Dimensions {
231
250
  # [:length, :width, :height].each do |axis|
232
251
  # name = axis.to_s.capitalize
@@ -356,28 +375,24 @@ module Omniship
356
375
  end
357
376
 
358
377
  def parse_rate_response(origin, destination, packages, response, options)
378
+ xml = Nokogiri::XML(response).remove_namespaces!
379
+ puts xml
359
380
  rate_estimates = []
360
381
  success, message = nil
361
382
 
362
- xml = Nokogiri::XML(response).remove_namespaces!
363
-
364
383
  success = response_success?(xml)
365
384
  message = response_message(xml)
366
385
 
367
-
368
- service_code = xml.xpath('//ServiceType').text == options[:service_type]
369
- is_saturday_delivery = xml.xpath('//AppliedOptions').text == 'SATURDAY_DELIVERY'
370
- service_type = is_saturday_delivery ? "#{service_code}_SATURDAY_DELIVERY" : service_code
371
-
372
- currency = handle_uk_currency(xml.xpath('//RatedShipmentDetails/ShipmentRateDetail/TotalNetCharge/Currency').text)
373
- rate_estimates << RateEstimate.new(origin, destination, @@name,
374
- self.class.service_name_for_code(service_type),
375
- :service_code => service_code,
376
- :total_price => xml.xpath('//RatedShipmentDetails/ShipmentRateDetail/TotalNetCharge/Amount').text.to_f,
377
- :currency => currency,
378
- :packages => packages,
379
- :delivery_range => [xml.xpath('//DeliveryTimestamp').text] * 2)
380
-
386
+ xml.xpath('//RateReplyDetails').each do |rate|
387
+ rate_estimates << RateEstimate.new(origin, destination, @@name,
388
+ :service_code => rate.xpath('ServiceType').text,
389
+ :service_name => rate.xpath('AppliedOptions').text == "SATURDAY_DELIVERY" ? "#{self.class.service_name_for_code(rate.xpath('ServiceType').text + '_SATURDAY_DELIVERY')}".upcase : self.class.service_name_for_code(rate.xpath('ServiceType').text),
390
+ :total_price => rate.xpath('RatedShipmentDetails').first.xpath('ShipmentRateDetail/TotalNetCharge/Amount').text.to_f,
391
+ :currency => handle_uk_currency(rate.xpath('RatedShipmentDetails').first.xpath('ShipmentRateDetail/TotalNetCharge/Currency').text),
392
+ :packages => packages,
393
+ :delivery_date => rate.xpath('ServiceType').text == "FEDEX_GROUND" ? rate.xpath('TransitTime').text : rate.xpath('DeliveryTimestamp').text
394
+ )
395
+ end
381
396
 
382
397
  if rate_estimates.empty?
383
398
  success = false
@@ -389,6 +404,7 @@ module Omniship
389
404
 
390
405
  def parse_ship_response(response, options)
391
406
  xml = Nokogiri::XML(response).remove_namespaces!
407
+ puts xml
392
408
  success = response_success?(xml)
393
409
  message = response_message(xml)
394
410
  label = nil
@@ -225,6 +225,14 @@ module Omniship
225
225
  }
226
226
  }
227
227
  }
228
+ if options[:return_service_code].present?
229
+ xml.ReturnService {
230
+ xml.Code options[:return_service_code]
231
+ # if options[:return_service_description].present?
232
+ # xml.Description options[:return_service_description]
233
+ # end
234
+ }
235
+ end
228
236
  xml.Service {
229
237
  xml.Code options[:service]
230
238
  }
@@ -236,14 +244,6 @@ module Omniship
236
244
  }
237
245
  end
238
246
  }
239
- if options[:return_service_code].present?
240
- xml.ReturnService {
241
- xml.Code options[:return_service_code]
242
- if options[:return_service_description].present?
243
- xml.Description options[:return_service_description]
244
- end
245
- }
246
- end
247
247
  packages.each do |package|
248
248
  imperial = ['US', 'LR', 'MM'].include?(origin.country_code(:alpha2))
249
249
  xml.Package {
@@ -504,7 +504,8 @@ module Omniship
504
504
  delivery_date = days_to_delivery >= 1 ? days_to_delivery.days.from_now.strftime("%Y-%m-%d") : nil
505
505
 
506
506
  rate_estimates << RateEstimate.new(origin, destination, @@name,
507
- service_name_for(origin, service_code),
507
+ :service_code => service_code,
508
+ :service_name => service_name_for(origin, service_code),
508
509
  :total_price => rated_shipment.xpath('TotalCharges/MonetaryValue').text.to_s.to_f,
509
510
  :currency => rated_shipment.xpath('TotalCharges/CurrencyCode').text.to_s,
510
511
  :service_code => service_code,
@@ -627,6 +628,7 @@ module Omniship
627
628
 
628
629
  def parse_ship_accept_response(response, options={})
629
630
  xml = Nokogiri::XML(response)
631
+ puts xml
630
632
  success = response_success?(xml)
631
633
  @response_text = {}
632
634
 
@@ -1,7 +1,7 @@
1
1
  module Omniship #:nodoc:
2
2
  class RateEstimate
3
3
  attr_reader :origin # Location objects
4
- attr_reader :destination
4
+ attr_reader :destination
5
5
  attr_reader :package_rates # array of hashes in the form of {:package => <Package>, :rate => 500}
6
6
  attr_reader :carrier # Carrier.name ('USPS', 'FedEx', etc.)
7
7
  attr_reader :service_name # name of service ("First Class Ground", etc.)
@@ -10,9 +10,10 @@ module Omniship #:nodoc:
10
10
  # http://en.wikipedia.org/wiki/ISO_4217
11
11
  attr_reader :delivery_date # Usually only available for express shipments
12
12
  attr_reader :delivery_range # Min and max delivery estimate in days
13
-
14
- def initialize(origin, destination, carrier, service_name, options={})
15
- @origin, @destination, @carrier, @service_name = origin, destination, carrier, service_name
13
+
14
+ def initialize(origin, destination, carrier, options={})
15
+ @origin, @destination, @carrier = origin, destination, carrier
16
+ @service_name = options[:service_name]
16
17
  @service_code = options[:service_code]
17
18
  if options[:package_rates]
18
19
  @package_rates = options[:package_rates].map {|p| p.update({:rate => Package.cents_from(p[:rate])}) }
@@ -22,7 +23,7 @@ module Omniship #:nodoc:
22
23
  @total_price = options[:total_price]
23
24
  @currency = options[:currency]
24
25
  @delivery_range = options[:delivery_range] ? options[:delivery_range].map { |date| date_for(date) }.compact : []
25
- @delivery_date = @delivery_range.last
26
+ @delivery_date = options[:delivery_date]
26
27
  end
27
28
 
28
29
  def total_price
@@ -33,18 +34,18 @@ module Omniship #:nodoc:
33
34
  end
34
35
  end
35
36
  alias_method :price, :total_price
36
-
37
+
37
38
  def add(package,rate=nil)
38
39
  cents = Package.cents_from(rate)
39
40
  raise ArgumentError.new("New packages must have valid rate information since this RateEstimate has no total_price set.") if cents.nil? and total_price.nil?
40
41
  @package_rates << {:package => package, :rate => cents}
41
42
  self
42
43
  end
43
-
44
+
44
45
  def packages
45
46
  package_rates.map {|p| p[:package]}
46
47
  end
47
-
48
+
48
49
  def package_count
49
50
  package_rates.length
50
51
  end
@@ -1,3 +1,3 @@
1
1
  module Omniship
2
- VERSION = "0.4.0"
2
+ VERSION = "0.4.1"
3
3
  end
metadata CHANGED
@@ -1,139 +1,139 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: omniship
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.4.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Donavan White
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-01-27 00:00:00.000000000 Z
11
+ date: 2015-03-11 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
19
  version: 2.3.5
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
26
  version: 2.3.5
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: i18n
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - '>='
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
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
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: active_utils
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - '>='
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
47
  version: 1.0.1
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
54
  version: 1.0.1
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: builder
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - '>='
59
+ - - ">="
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - '>='
66
+ - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: nokogiri
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - '>='
73
+ - - ">="
74
74
  - !ruby/object:Gem::Version
75
75
  version: '0'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - '>='
80
+ - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: rake
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - '>='
87
+ - - ">="
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - '>='
94
+ - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: '0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: mocha
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - '>='
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
103
  version: '0'
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - '>='
108
+ - - ">="
109
109
  - !ruby/object:Gem::Version
110
110
  version: '0'
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: railties
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - '>='
115
+ - - ">="
116
116
  - !ruby/object:Gem::Version
117
117
  version: '0'
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
- - - '>='
122
+ - - ">="
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0'
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: rails
127
127
  requirement: !ruby/object:Gem::Requirement
128
128
  requirements:
129
- - - '>='
129
+ - - ">="
130
130
  - !ruby/object:Gem::Version
131
131
  version: '0'
132
132
  type: :development
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
135
135
  requirements:
136
- - - '>='
136
+ - - ">="
137
137
  - !ruby/object:Gem::Version
138
138
  version: '0'
139
139
  description: Create shipments and get rates and tracking info from various shipping
@@ -144,48 +144,48 @@ executables: []
144
144
  extensions: []
145
145
  extra_rdoc_files: []
146
146
  files:
147
- - lib/rails/generators/omniship/setup/setup_generator.rb
148
- - lib/rails/generators/omniship/setup/templates/initializer.rb
149
- - lib/rails/generators/omniship/setup/templates/omniship.yml
150
- - lib/vendor/xml_node/README
151
- - lib/vendor/xml_node/benchmark/bench_generation.rb
152
- - lib/vendor/xml_node/test/test_parsing.rb
153
- - lib/vendor/xml_node/test/test_generating.rb
154
- - lib/vendor/xml_node/init.rb
155
- - lib/vendor/xml_node/lib/xml_node.rb
156
- - lib/vendor/xml_node/Rakefile
157
- - lib/vendor/quantified/test/mass_test.rb
158
- - lib/vendor/quantified/test/length_test.rb
159
- - lib/vendor/quantified/test/test_helper.rb
160
- - lib/vendor/quantified/README.markdown
161
- - lib/vendor/quantified/init.rb
162
- - lib/vendor/quantified/lib/quantified.rb
163
- - lib/vendor/quantified/lib/quantified/length.rb
164
- - lib/vendor/quantified/lib/quantified/mass.rb
165
- - lib/vendor/quantified/lib/quantified/attribute.rb
166
- - lib/vendor/quantified/Rakefile
167
- - lib/vendor/quantified/MIT-LICENSE
168
- - lib/omniship/response.rb
169
- - lib/omniship/carriers/usps.rb
147
+ - CHANGELOG
148
+ - MIT-LICENSE
149
+ - README.markdown
150
+ - lib/omniship.rb
151
+ - lib/omniship/address.rb
152
+ - lib/omniship/base.rb
153
+ - lib/omniship/carrier.rb
154
+ - lib/omniship/carriers.rb
170
155
  - lib/omniship/carriers/fedex.rb
171
156
  - lib/omniship/carriers/ups.rb
172
- - lib/omniship/notification.rb
173
- - lib/omniship/rate_response.rb
157
+ - lib/omniship/carriers/usps.rb
174
158
  - lib/omniship/contact.rb
159
+ - lib/omniship/notification.rb
175
160
  - lib/omniship/package.rb
176
- - lib/omniship/carriers.rb
177
- - lib/omniship/address.rb
178
- - lib/omniship/tracking_response.rb
179
161
  - lib/omniship/rate_estimate.rb
180
- - lib/omniship/carrier.rb
162
+ - lib/omniship/rate_response.rb
163
+ - lib/omniship/response.rb
181
164
  - lib/omniship/ship_response.rb
182
165
  - lib/omniship/shipment_event.rb
166
+ - lib/omniship/tracking_response.rb
183
167
  - lib/omniship/version.rb
184
- - lib/omniship/base.rb
185
- - lib/omniship.rb
186
- - MIT-LICENSE
187
- - README.markdown
188
- - CHANGELOG
168
+ - lib/rails/generators/omniship/setup/setup_generator.rb
169
+ - lib/rails/generators/omniship/setup/templates/initializer.rb
170
+ - lib/rails/generators/omniship/setup/templates/omniship.yml
171
+ - lib/vendor/quantified/MIT-LICENSE
172
+ - lib/vendor/quantified/README.markdown
173
+ - lib/vendor/quantified/Rakefile
174
+ - lib/vendor/quantified/init.rb
175
+ - lib/vendor/quantified/lib/quantified.rb
176
+ - lib/vendor/quantified/lib/quantified/attribute.rb
177
+ - lib/vendor/quantified/lib/quantified/length.rb
178
+ - lib/vendor/quantified/lib/quantified/mass.rb
179
+ - lib/vendor/quantified/test/length_test.rb
180
+ - lib/vendor/quantified/test/mass_test.rb
181
+ - lib/vendor/quantified/test/test_helper.rb
182
+ - lib/vendor/xml_node/README
183
+ - lib/vendor/xml_node/Rakefile
184
+ - lib/vendor/xml_node/benchmark/bench_generation.rb
185
+ - lib/vendor/xml_node/init.rb
186
+ - lib/vendor/xml_node/lib/xml_node.rb
187
+ - lib/vendor/xml_node/test/test_generating.rb
188
+ - lib/vendor/xml_node/test/test_parsing.rb
189
189
  homepage: http://github.com/Digi-Cazter/omniship
190
190
  licenses:
191
191
  - MIT
@@ -196,17 +196,17 @@ require_paths:
196
196
  - lib
197
197
  required_ruby_version: !ruby/object:Gem::Requirement
198
198
  requirements:
199
- - - '>='
199
+ - - ">="
200
200
  - !ruby/object:Gem::Version
201
201
  version: '0'
202
202
  required_rubygems_version: !ruby/object:Gem::Requirement
203
203
  requirements:
204
- - - '>='
204
+ - - ">="
205
205
  - !ruby/object:Gem::Version
206
206
  version: 1.3.6
207
207
  requirements: []
208
208
  rubyforge_project:
209
- rubygems_version: 2.1.9
209
+ rubygems_version: 2.2.2
210
210
  signing_key:
211
211
  specification_version: 4
212
212
  summary: Shipping API for creating, tracking, and getting rates.