spree_core 2.0.1 → 2.0.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: ba256871b4271963d57988bbc055000835a3d359
4
+ data.tar.gz: f2070ec0df0c5b687f10d25f33528f0151153a02
5
+ SHA512:
6
+ metadata.gz: ab1f9924ec12758bdde87c46fdc06e2f493208b6df9324d9119bc84cd8b5af1650687e6977979f77c7b5cc9d57c9eab03c7f2cb9f6a947dae698ff83743f4c81
7
+ data.tar.gz: 4ea86ef2c5b78eccc880297be77d7ab8e6d835e9a393f65840f3b31fb4f611753b05044550ba59de14ba01624f464b8d4a727042732f47789fe75a1b68497255
@@ -38,7 +38,6 @@ module Spree
38
38
  preference :check_for_spree_alerts, :boolean, default: true
39
39
  preference :checkout_zone, :string, default: nil # replace with the name of a zone if you would like to limit the countries
40
40
  preference :company, :boolean, default: false # Request company field for billing and shipping addr
41
- preference :create_inventory_units, :boolean, default: true # should only be false when track_inventory_levels is false, also disables RMA's
42
41
  preference :currency, :string, default: "USD"
43
42
  preference :currency_decimal_mark, :string, default: "."
44
43
  preference :currency_symbol_position, :string, default: "before"
@@ -273,32 +273,21 @@ module Spree
273
273
  contents.add(variant, quantity)
274
274
  end
275
275
 
276
+
276
277
  def remove_variant(variant, quantity = 1)
277
278
  ActiveSupport::Deprecation.warn("[SPREE] Spree::Order#remove_variant will be deprecated in Spree 2.1, please use order.contents.remove instead.")
278
279
  contents.remove(variant, quantity)
279
280
  end
280
281
 
281
- def remove_variant(variant, quantity = 1)
282
- current_item = find_line_item_by_variant(variant)
283
- current_item.quantity += -quantity
284
-
285
- if current_item.quantity == 0
286
- current_item.destroy
287
- else
288
- current_item.save!
289
- end
290
-
291
- self.reload
292
- current_item
293
- end
294
-
295
282
  # Associates the specified user with the order.
296
283
  def associate_user!(user)
297
284
  self.user = user
298
285
  self.email = user.email
299
- # disable validations since they can cause issues when associating
300
- # an incomplete address during the address step
301
- save(validate: false)
286
+
287
+ if persisted?
288
+ # immediately persist the changes we just made, but don't use save since we might have an invalid address associated
289
+ self.class.unscoped.where(id: id).update_all(email: user.email, user_id: user.id)
290
+ end
302
291
  end
303
292
 
304
293
  # FIXME refactor this method and implement validation using validates_* utilities
@@ -46,7 +46,7 @@ module Spree
46
46
  next unless inventory_unit.return_authorization.nil? && count < quantity
47
47
 
48
48
  inventory_unit.return_authorization = self
49
- inventory_unit.return!
49
+ inventory_unit.save!
50
50
 
51
51
  count += 1
52
52
  end
@@ -35,7 +35,7 @@ module Spree
35
35
  event :ready do
36
36
  transition from: :pending, to: :ready, if: lambda { |shipment|
37
37
  # Fix for #2040
38
- shipment.determine_state(shipment.order) == :ready
38
+ shipment.determine_state(shipment.order) == 'ready'
39
39
  }
40
40
  end
41
41
 
@@ -9,7 +9,9 @@ module Spree
9
9
  has_many :shipping_method_categories
10
10
  has_many :shipping_categories, through: :shipping_method_categories
11
11
 
12
- has_and_belongs_to_many :zones
12
+ has_and_belongs_to_many :zones, :join_table => 'spree_shipping_methods_zones',
13
+ :class_name => 'Spree::Zone',
14
+ :foreign_key => 'shipping_method_id'
13
15
 
14
16
  attr_accessible :name, :zones, :display_on, :shipping_category_id,
15
17
  :match_none, :match_one, :match_all, :tracking_url
@@ -23,14 +25,12 @@ module Spree
23
25
  end
24
26
 
25
27
  def zone
26
- raise "DEPRECATION WARNING: ShippingMethod#zone is no longer correct. Multiple zones need to be supported"
27
- Rails.logger.error "DEPRECATION WARNING: ShippingMethod#zone is no longer correct. Multiple zones need to be supported"
28
+ ActiveSupport::Deprecation.warn("[SPREE] ShippingMethod#zone is no longer correct. Multiple zones need to be supported")
28
29
  zones.first
29
30
  end
30
31
 
31
32
  def zone=(zone)
32
- p "DEPRECATION WARNING: ShippingMethod#zone is no longer correct. Multiple zones need to be supported"
33
- Rails.logger.error "DEPRECATION WARNING: ShippingMethod#zone= is no longer correct. Multiple zones need to be supported"
33
+ ActiveSupport::Deprecation.warn("[SPREE] ShippingMethod#zone= is no longer correct. Multiple zones need to be supported")
34
34
  zones = zone
35
35
  end
36
36
 
@@ -19,6 +19,10 @@ module Spree
19
19
  stock_items.where(variant_id: variant).order(:id).first
20
20
  end
21
21
 
22
+ def stock_item_or_create(variant)
23
+ stock_item(variant) || stock_items.create(variant: variant)
24
+ end
25
+
22
26
  def count_on_hand(variant)
23
27
  stock_item(variant).try(:count_on_hand)
24
28
  end
@@ -36,7 +40,8 @@ module Spree
36
40
  end
37
41
 
38
42
  def move(variant, quantity, originator = nil)
39
- stock_item(variant).stock_movements.create!(quantity: quantity, originator: originator)
43
+ stock_item_or_create(variant).stock_movements.create!(quantity: quantity,
44
+ originator: originator)
40
45
  end
41
46
 
42
47
  def fill_status(variant, quantity)
@@ -3,7 +3,7 @@ module Spree
3
3
  belongs_to :stock_item, class_name: 'Spree::StockItem'
4
4
  belongs_to :originator, polymorphic: true
5
5
 
6
- attr_accessible :quantity, :stock_item, :stock_item_id, :originator
6
+ attr_accessible :quantity, :stock_item, :stock_item_id, :originator, :action
7
7
 
8
8
  after_create :update_stock_item_quantity
9
9
 
@@ -129,20 +129,11 @@ module Spree
129
129
  "#{name} - #{sku}"
130
130
  end
131
131
 
132
- private
133
-
134
- # Ensures a new variant takes the product master price when price is not supplied
135
- def check_price
136
- if price.nil? && Spree::Config[:require_master_price]
137
- raise 'No master variant found to infer price' unless (product && product.master)
138
- raise 'Must supply price for variant or master.price for product.' if self == product.master
139
- self.price = product.master.price
140
- end
141
- if currency.nil?
142
- self.currency = Spree::Config[:currency]
143
- end
144
- end
132
+ def in_stock?(quantity=1)
133
+ Spree::Stock::Quantifier.new(self).can_supply?(quantity)
134
+ end
145
135
 
136
+ private
146
137
  # strips all non-price-like characters from the price, taking into account locale settings
147
138
  def parse_price(price)
148
139
  return price unless price.is_a?(String)
@@ -157,10 +148,14 @@ module Spree
157
148
 
158
149
  # Ensures a new variant takes the product master price when price is not supplied
159
150
  def check_price
160
- if price.nil?
151
+ if price.nil? && Spree::Config[:require_master_price]
152
+ raise 'No master variant found to infer price' unless (product && product.master)
161
153
  raise 'Must supply price for variant or master.price for product.' if self == product.master
162
154
  self.price = product.master.price
163
155
  end
156
+ if currency.nil?
157
+ self.currency = Spree::Config[:currency]
158
+ end
164
159
  end
165
160
 
166
161
  def save_default_price
@@ -2,7 +2,9 @@ module Spree
2
2
  class Zone < ActiveRecord::Base
3
3
  has_many :zone_members, dependent: :destroy, class_name: "Spree::ZoneMember"
4
4
  has_many :tax_rates, dependent: :destroy
5
- has_and_belongs_to_many :shipping_methods
5
+ has_and_belongs_to_many :shipping_methods, :join_table => 'spree_shipping_methods_zones',
6
+ :class_name => 'Spree::ShippingMethod',
7
+ :foreign_key => 'zone_id'
6
8
 
7
9
  validates :name, presence: true, uniqueness: true
8
10
  after_save :remove_defunct_members
@@ -288,6 +288,13 @@ en:
288
288
  delivery_error: Test Mail delivery error
289
289
  delivery_success: Test Mail sent successfully
290
290
  error: ! 'Test Mail error: %{e}'
291
+ tab:
292
+ overview: "Overview"
293
+ orders: "Orders"
294
+ products: "Products"
295
+ reports: "Reports"
296
+ configuration: "Configuration"
297
+ promotions: "Promotions"
291
298
  administration: Administration
292
299
  agree_to_privacy_policy: Agree to Privacy Policy
293
300
  agree_to_terms_of_service: Agree to Terms of Service
@@ -431,6 +438,7 @@ en:
431
438
  jirafe:
432
439
  app_id: App ID
433
440
  app_token: App Token
441
+ currently_unavailable: Jirafe is currently unavailable. Spree will automatically connect to Jirafe once it is available.
434
442
  explanation: The fields below may already be populated if you chose to register with Jirafe from the admin dashboard.
435
443
  header: Jirafe Analytics Settings
436
444
  site_id: Site ID
@@ -944,6 +952,7 @@ en:
944
952
  smtp_username: SMTP Username
945
953
  source: Source
946
954
  special_instructions: Special Instructions
955
+ split: Split
947
956
  spree_gateway_error_flash_for_checkout: There was a problem with your payment information. Please check your information and try again.
948
957
  start: Start
949
958
  start_date: Valid from
@@ -0,0 +1,5 @@
1
+ class RenameShippingMethodsZonesToSpreeShippingMethodsZones < ActiveRecord::Migration
2
+ def change
3
+ rename_table :shipping_methods_zones, :spree_shipping_methods_zones
4
+ end
5
+ end
@@ -3,7 +3,7 @@ module Spree
3
3
  module CalculatedAdjustments
4
4
  def self.included(klass)
5
5
  klass.class_eval do
6
- has_one :calculator, :as => :calculable, :dependent => :destroy
6
+ has_one :calculator, :class_name => "Spree::Calculator", :as => :calculable, :dependent => :destroy
7
7
  accepts_nested_attributes_for :calculator
8
8
  attr_accessible :calculator_type, :calculator_attributes
9
9
  validates :calculator, :presence => true
@@ -66,9 +66,12 @@ module Spree
66
66
  Mail.register_interceptor(Spree::Core::MailInterceptor)
67
67
  end
68
68
 
69
+ # We need to define promotions rules here so extensions and existing apps
70
+ # can add their custom classes on their initializer files
69
71
  initializer 'spree.promo.environment' do |app|
70
72
  app.config.spree.add_class('promotions')
71
73
  app.config.spree.promotions = Spree::Promo::Environment.new
74
+ app.config.spree.promotions.rules = []
72
75
  end
73
76
 
74
77
  initializer 'spree.promo.register.promotion.calculators' do |app|
@@ -83,8 +86,12 @@ module Spree
83
86
  ]
84
87
  end
85
88
 
86
- initializer 'spree.promo.register.promotions.rules' do |app|
87
- app.config.spree.promotions.rules = [
89
+ # Promotion rules need to be evaluated on after initialize otherwise
90
+ # Spree.user_class would be nil and users might experience errors related
91
+ # to malformed model associations (Spree.user_class is only defined on
92
+ # the app initializer)
93
+ config.after_initialize do
94
+ Rails.application.config.spree.promotions.rules.concat [
88
95
  Spree::Promotion::Rules::ItemTotal,
89
96
  Spree::Promotion::Rules::Product,
90
97
  Spree::Promotion::Rules::User,
@@ -1,5 +1,5 @@
1
1
  module Spree
2
2
  def self.version
3
- "2.0.1"
3
+ "2.0.2"
4
4
  end
5
5
  end
@@ -46,6 +46,17 @@ module CapybaraExt
46
46
  targetted_select2(value, options)
47
47
  end
48
48
 
49
+ def select2_no_label value, options={}
50
+ raise "Must pass a hash containing 'from'" if not options.is_a?(Hash) or not options.has_key?(:from)
51
+
52
+ placeholder = options[:from]
53
+ minlength = options[:minlength] || 4
54
+
55
+ click_link placeholder
56
+
57
+ select_select2_result(value)
58
+ end
59
+
49
60
  def targetted_select2(value, options)
50
61
  # find select2 element and click it
51
62
  find(options[:from]).find('a').click
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
5
- prerelease:
4
+ version: 2.0.2
6
5
  platform: ruby
7
6
  authors:
8
7
  - Sean Schofield
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-06-04 00:00:00.000000000 Z
11
+ date: 2013-06-12 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: highline
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - '='
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
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
@@ -30,7 +27,6 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: acts_as_list
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - '='
36
32
  - !ruby/object:Gem::Version
@@ -38,7 +34,6 @@ dependencies:
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
@@ -46,7 +41,6 @@ dependencies:
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: awesome_nested_set
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - '='
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :runtime
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
@@ -62,7 +55,6 @@ dependencies:
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: kaminari
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - '='
68
60
  - !ruby/object:Gem::Version
@@ -70,7 +62,6 @@ dependencies:
70
62
  type: :runtime
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
@@ -78,7 +69,6 @@ dependencies:
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: state_machine
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
73
  - - '='
84
74
  - !ruby/object:Gem::Version
@@ -86,7 +76,6 @@ dependencies:
86
76
  type: :runtime
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
@@ -94,7 +83,6 @@ dependencies:
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: ffaker
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
87
  - - ~>
100
88
  - !ruby/object:Gem::Version
@@ -102,7 +90,6 @@ dependencies:
102
90
  type: :runtime
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
@@ -110,7 +97,6 @@ dependencies:
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: paperclip
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
101
  - - ~>
116
102
  - !ruby/object:Gem::Version
@@ -118,7 +104,6 @@ dependencies:
118
104
  type: :runtime
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
@@ -126,7 +111,6 @@ dependencies:
126
111
  - !ruby/object:Gem::Dependency
127
112
  name: aws-sdk
128
113
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
114
  requirements:
131
115
  - - ~>
132
116
  - !ruby/object:Gem::Version
@@ -134,7 +118,6 @@ dependencies:
134
118
  type: :runtime
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
121
  requirements:
139
122
  - - ~>
140
123
  - !ruby/object:Gem::Version
@@ -142,7 +125,6 @@ dependencies:
142
125
  - !ruby/object:Gem::Dependency
143
126
  name: ransack
144
127
  requirement: !ruby/object:Gem::Requirement
145
- none: false
146
128
  requirements:
147
129
  - - '='
148
130
  - !ruby/object:Gem::Version
@@ -150,7 +132,6 @@ dependencies:
150
132
  type: :runtime
151
133
  prerelease: false
152
134
  version_requirements: !ruby/object:Gem::Requirement
153
- none: false
154
135
  requirements:
155
136
  - - '='
156
137
  - !ruby/object:Gem::Version
@@ -158,7 +139,6 @@ dependencies:
158
139
  - !ruby/object:Gem::Dependency
159
140
  name: activemerchant
160
141
  requirement: !ruby/object:Gem::Requirement
161
- none: false
162
142
  requirements:
163
143
  - - ~>
164
144
  - !ruby/object:Gem::Version
@@ -166,7 +146,6 @@ dependencies:
166
146
  type: :runtime
167
147
  prerelease: false
168
148
  version_requirements: !ruby/object:Gem::Requirement
169
- none: false
170
149
  requirements:
171
150
  - - ~>
172
151
  - !ruby/object:Gem::Version
@@ -174,23 +153,20 @@ dependencies:
174
153
  - !ruby/object:Gem::Dependency
175
154
  name: json
176
155
  requirement: !ruby/object:Gem::Requirement
177
- none: false
178
156
  requirements:
179
- - - ! '>='
157
+ - - '>='
180
158
  - !ruby/object:Gem::Version
181
159
  version: 1.7.7
182
160
  type: :runtime
183
161
  prerelease: false
184
162
  version_requirements: !ruby/object:Gem::Requirement
185
- none: false
186
163
  requirements:
187
- - - ! '>='
164
+ - - '>='
188
165
  - !ruby/object:Gem::Version
189
166
  version: 1.7.7
190
167
  - !ruby/object:Gem::Dependency
191
168
  name: rails
192
169
  requirement: !ruby/object:Gem::Requirement
193
- none: false
194
170
  requirements:
195
171
  - - ~>
196
172
  - !ruby/object:Gem::Version
@@ -198,7 +174,6 @@ dependencies:
198
174
  type: :runtime
199
175
  prerelease: false
200
176
  version_requirements: !ruby/object:Gem::Requirement
201
- none: false
202
177
  requirements:
203
178
  - - ~>
204
179
  - !ruby/object:Gem::Version
@@ -206,23 +181,20 @@ dependencies:
206
181
  - !ruby/object:Gem::Dependency
207
182
  name: deface
208
183
  requirement: !ruby/object:Gem::Requirement
209
- none: false
210
184
  requirements:
211
- - - ! '>='
185
+ - - '>='
212
186
  - !ruby/object:Gem::Version
213
187
  version: 0.9.0
214
188
  type: :runtime
215
189
  prerelease: false
216
190
  version_requirements: !ruby/object:Gem::Requirement
217
- none: false
218
191
  requirements:
219
- - - ! '>='
192
+ - - '>='
220
193
  - !ruby/object:Gem::Version
221
194
  version: 0.9.0
222
195
  - !ruby/object:Gem::Dependency
223
196
  name: stringex
224
197
  requirement: !ruby/object:Gem::Requirement
225
- none: false
226
198
  requirements:
227
199
  - - ~>
228
200
  - !ruby/object:Gem::Version
@@ -230,7 +202,6 @@ dependencies:
230
202
  type: :runtime
231
203
  prerelease: false
232
204
  version_requirements: !ruby/object:Gem::Requirement
233
- none: false
234
205
  requirements:
235
206
  - - ~>
236
207
  - !ruby/object:Gem::Version
@@ -238,7 +209,6 @@ dependencies:
238
209
  - !ruby/object:Gem::Dependency
239
210
  name: cancan
240
211
  requirement: !ruby/object:Gem::Requirement
241
- none: false
242
212
  requirements:
243
213
  - - '='
244
214
  - !ruby/object:Gem::Version
@@ -246,7 +216,6 @@ dependencies:
246
216
  type: :runtime
247
217
  prerelease: false
248
218
  version_requirements: !ruby/object:Gem::Requirement
249
- none: false
250
219
  requirements:
251
220
  - - '='
252
221
  - !ruby/object:Gem::Version
@@ -254,7 +223,6 @@ dependencies:
254
223
  - !ruby/object:Gem::Dependency
255
224
  name: truncate_html
256
225
  requirement: !ruby/object:Gem::Requirement
257
- none: false
258
226
  requirements:
259
227
  - - '='
260
228
  - !ruby/object:Gem::Version
@@ -262,7 +230,6 @@ dependencies:
262
230
  type: :runtime
263
231
  prerelease: false
264
232
  version_requirements: !ruby/object:Gem::Requirement
265
- none: false
266
233
  requirements:
267
234
  - - '='
268
235
  - !ruby/object:Gem::Version
@@ -270,7 +237,6 @@ dependencies:
270
237
  - !ruby/object:Gem::Dependency
271
238
  name: money
272
239
  requirement: !ruby/object:Gem::Requirement
273
- none: false
274
240
  requirements:
275
241
  - - '='
276
242
  - !ruby/object:Gem::Version
@@ -278,7 +244,6 @@ dependencies:
278
244
  type: :runtime
279
245
  prerelease: false
280
246
  version_requirements: !ruby/object:Gem::Requirement
281
- none: false
282
247
  requirements:
283
248
  - - '='
284
249
  - !ruby/object:Gem::Version
@@ -286,7 +251,6 @@ dependencies:
286
251
  - !ruby/object:Gem::Dependency
287
252
  name: httparty
288
253
  requirement: !ruby/object:Gem::Requirement
289
- none: false
290
254
  requirements:
291
255
  - - ~>
292
256
  - !ruby/object:Gem::Version
@@ -294,7 +258,6 @@ dependencies:
294
258
  type: :runtime
295
259
  prerelease: false
296
260
  version_requirements: !ruby/object:Gem::Requirement
297
- none: false
298
261
  requirements:
299
262
  - - ~>
300
263
  - !ruby/object:Gem::Version
@@ -607,6 +570,7 @@ files:
607
570
  - db/migrate/20130423223847_set_default_shipping_rate_cost.rb
608
571
  - db/migrate/20130509115210_add_number_to_stock_transfer.rb
609
572
  - db/migrate/20130514151929_add_sku_index_to_spree_variants.rb
573
+ - db/migrate/20130611054351_rename_shipping_methods_zones_to_spree_shipping_methods_zones.rb
610
574
  - db/seeds.rb
611
575
  - vendor/assets/javascripts/jquery-migrate-1.0.0.js
612
576
  - vendor/assets/javascripts/jsuri.js
@@ -615,29 +579,25 @@ files:
615
579
  homepage: http://spreecommerce.com
616
580
  licenses:
617
581
  - BSD-3
582
+ metadata: {}
618
583
  post_install_message:
619
584
  rdoc_options: []
620
585
  require_paths:
621
586
  - lib
622
587
  required_ruby_version: !ruby/object:Gem::Requirement
623
- none: false
624
588
  requirements:
625
- - - ! '>='
589
+ - - '>='
626
590
  - !ruby/object:Gem::Version
627
591
  version: 1.9.3
628
592
  required_rubygems_version: !ruby/object:Gem::Requirement
629
- none: false
630
593
  requirements:
631
- - - ! '>='
594
+ - - '>='
632
595
  - !ruby/object:Gem::Version
633
596
  version: '0'
634
- segments:
635
- - 0
636
- hash: -283587825053128084
637
597
  requirements: []
638
598
  rubyforge_project:
639
- rubygems_version: 1.8.25
599
+ rubygems_version: 2.0.0
640
600
  signing_key:
641
- specification_version: 3
601
+ specification_version: 4
642
602
  summary: The bare bones necessary for Spree.
643
603
  test_files: []