spree_core 4.6.3 → 4.7.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 +4 -4
- data/app/finders/spree/countries/find.rb +1 -1
- data/app/finders/spree/products/find.rb +1 -1
- data/app/finders/spree/taxons/find.rb +3 -9
- data/app/helpers/spree/base_helper.rb +1 -5
- data/app/helpers/spree/products_helper.rb +3 -3
- data/app/models/concerns/spree/metadata.rb +7 -2
- data/app/models/concerns/spree/user_roles.rb +3 -3
- data/app/models/spree/address.rb +5 -3
- data/app/models/spree/base.rb +5 -1
- data/app/models/spree/cms/sections/image_gallery.rb +1 -7
- data/app/models/spree/cms/sections/side_by_side_images.rb +1 -7
- data/app/models/spree/country.rb +2 -2
- data/app/models/spree/digital_link.rb +5 -1
- data/app/models/spree/order.rb +4 -4
- data/app/models/spree/payment.rb +4 -12
- data/app/models/spree/preference.rb +5 -1
- data/app/models/spree/product.rb +3 -11
- data/app/models/spree/product_property.rb +1 -1
- data/app/models/spree/return_item.rb +5 -1
- data/app/models/spree/stock/splitter/weight.rb +1 -1
- data/app/models/spree/store.rb +2 -2
- data/app/models/spree/wishlist.rb +5 -1
- data/app/models/spree/zone.rb +1 -1
- data/app/services/spree/seeds/countries.rb +12 -27
- data/app/services/spree/seeds/states.rb +8 -17
- data/app/services/spree/stock_locations/stock_items/create.rb +12 -18
- data/app/validators/db_maximum_length_validator.rb +2 -6
- data/config/initializers/rails61_fixes.rb +1 -3
- data/config/locales/en.yml +6 -0
- data/lib/spree/core/configuration.rb +1 -1
- data/lib/spree/core/controller_helpers/auth.rb +1 -1
- data/lib/spree/core/controller_helpers/common.rb +5 -5
- data/lib/spree/core/engine.rb +1 -0
- data/lib/spree/core/preferences/preferable_class_methods.rb +1 -1
- data/lib/spree/core/version.rb +1 -1
- data/lib/spree/testing_support/controller_requests.rb +10 -10
- data/spree_core.gemspec +3 -3
- metadata +22 -28
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b694ef25dfdd98db89c6c36a42cc50de19b6dab09cc827c5273e57dc066f38d6
|
4
|
+
data.tar.gz: '09ecb007e8e2181ace749a1b6776c8fe62eafdb07f321238d5fd69670f209206'
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3620378de0b17967f36b2d0a4c72e302aa25dae3f700aaf09e2d9b9cec73bf4b924a81a273beb9da245571c1c48128e5ad53c26539a7f8de04b0c38cdbb31d20
|
7
|
+
data.tar.gz: f902de746ff1dfbeef5f778f6cc204db4c47477fd76c8a0eeea60874fa45a188be8cf33ca1462240f636f57394cf790f71ce6dbdd2ac48bf756aa4e3379b059f
|
@@ -8,7 +8,7 @@ module Spree
|
|
8
8
|
end
|
9
9
|
|
10
10
|
def call
|
11
|
-
|
11
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
12
12
|
Spree::Countries::Find.new.call is deprecated and will be removed in Spree 5.0.
|
13
13
|
Please use Spree::Countries::Find.new.execute instead
|
14
14
|
DEPRECATION
|
@@ -5,7 +5,7 @@ module Spree
|
|
5
5
|
@scope = scope
|
6
6
|
|
7
7
|
if current_currency.present?
|
8
|
-
|
8
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
9
9
|
`current_currency` param is deprecated and will be removed in Spree 5.
|
10
10
|
Please pass `:currency` in `params` hash instead.
|
11
11
|
DEPRECATION
|
@@ -65,15 +65,9 @@ module Spree
|
|
65
65
|
def by_parent_permalink(taxons)
|
66
66
|
return taxons unless parent_permalink?
|
67
67
|
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
where(["#{Taxon.translation_table_alias}.permalink = ?", parent_permalink])
|
72
|
-
else
|
73
|
-
taxons.joins("INNER JOIN #{Spree::Taxon.table_name} AS parent_taxon ON parent_taxon.id = #{Spree::Taxon.table_name}.parent_id").
|
74
|
-
join_translation_table(Taxon, 'parent_taxon').
|
75
|
-
where(["#{Taxon.translation_table_alias}.permalink = ?", parent_permalink])
|
76
|
-
end
|
68
|
+
taxons.joins(:parent).
|
69
|
+
join_translation_table(Taxon, 'parents_spree_taxons').
|
70
|
+
where(["#{Taxon.translation_table_alias}.permalink = ?", parent_permalink])
|
77
71
|
end
|
78
72
|
|
79
73
|
def by_taxonomy(taxons)
|
@@ -55,7 +55,7 @@ module Spree
|
|
55
55
|
end
|
56
56
|
|
57
57
|
def logo(image_path = nil, options = {})
|
58
|
-
|
58
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
59
59
|
`BaseHelper#logo` is deprecated and will be removed in Spree 5.0.
|
60
60
|
Please use `FrontendHelper#logo` instead
|
61
61
|
DEPRECATION
|
@@ -174,10 +174,6 @@ module Spree
|
|
174
174
|
Spree::Core::Engine.frontend_available?
|
175
175
|
end
|
176
176
|
|
177
|
-
def rails_5?
|
178
|
-
Rails::VERSION::STRING < '6.0'
|
179
|
-
end
|
180
|
-
|
181
177
|
def spree_storefront_resource_url(resource, options = {})
|
182
178
|
if defined?(locale_param) && locale_param.present?
|
183
179
|
options.merge!(locale: locale_param)
|
@@ -53,7 +53,7 @@ module Spree
|
|
53
53
|
end
|
54
54
|
|
55
55
|
def cache_key_for_products(products = @products, additional_cache_key = nil)
|
56
|
-
max_updated_at = (products.except(:group, :order).maximum(:updated_at) || Date.today).
|
56
|
+
max_updated_at = (products.except(:group, :order).maximum(:updated_at) || Date.today).to_formatted_s(:number)
|
57
57
|
products_cache_keys = "spree/products/#{products.map(&:id).join('-')}-#{params[:page]}-#{params[:sort_by]}-#{max_updated_at}-#{@taxon&.id}"
|
58
58
|
(common_product_cache_keys + [products_cache_keys] + [additional_cache_key]).compact.join('/')
|
59
59
|
end
|
@@ -76,7 +76,7 @@ module Spree
|
|
76
76
|
|
77
77
|
# will return a human readable string
|
78
78
|
def available_status(product)
|
79
|
-
|
79
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
80
80
|
`Spree::ProductsHelper#available_status` method from spree/core is deprecated and will be removed.
|
81
81
|
Please use `Spree::Admin::ProductsHelper#available_status` from spree_backend instead.
|
82
82
|
DEPRECATION
|
@@ -140,7 +140,7 @@ module Spree
|
|
140
140
|
end
|
141
141
|
|
142
142
|
def related_products
|
143
|
-
|
143
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
144
144
|
ProductsHelper#related_products is deprecated and will be removed in Spree 5.0.
|
145
145
|
Please use ProductsHelper#relations from now on.
|
146
146
|
DEPRECATION
|
@@ -5,8 +5,13 @@ module Spree
|
|
5
5
|
included do
|
6
6
|
attribute :public_metadata, default: {}
|
7
7
|
attribute :private_metadata, default: {}
|
8
|
-
|
9
|
-
|
8
|
+
if Rails::VERSION::STRING >= '7.1.0'
|
9
|
+
serialize :public_metadata, coder: HashSerializer
|
10
|
+
serialize :private_metadata, coder: HashSerializer
|
11
|
+
else
|
12
|
+
serialize :public_metadata, HashSerializer
|
13
|
+
serialize :private_metadata, HashSerializer
|
14
|
+
end
|
10
15
|
end
|
11
16
|
|
12
17
|
# https://nandovieira.com/using-postgresql-and-jsonb-with-ruby-on-rails
|
@@ -14,19 +14,19 @@ module Spree
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def self.admin
|
17
|
-
|
17
|
+
Spree::Deprecation.warn('`User#admin` is deprecated and will be removed in Spree 5. Please use `User#spree_admin`')
|
18
18
|
|
19
19
|
spree_admin
|
20
20
|
end
|
21
21
|
|
22
22
|
def self.admin_created?
|
23
|
-
|
23
|
+
Spree::Deprecation.warn('`User#admin_created?` is deprecated and will be removed in Spree 5. Please use `User#spree_admin_created?`')
|
24
24
|
|
25
25
|
spree_admin_created?
|
26
26
|
end
|
27
27
|
|
28
28
|
def admin?
|
29
|
-
|
29
|
+
Spree::Deprecation.warn('`User#admin?` is deprecated and will be removed in Spree 5. Please use `User#spree_admin?`')
|
30
30
|
|
31
31
|
spree_admin?
|
32
32
|
end
|
data/app/models/spree/address.rb
CHANGED
@@ -10,7 +10,9 @@ module Spree
|
|
10
10
|
include Spree::Security::Addresses
|
11
11
|
end
|
12
12
|
|
13
|
-
if Rails::VERSION::STRING >= '
|
13
|
+
if Rails::VERSION::STRING >= '7.1.0'
|
14
|
+
serialize :preferences, type: Hash, coder: YAML, default: {}
|
15
|
+
else
|
14
16
|
serialize :preferences, Hash, default: {}
|
15
17
|
end
|
16
18
|
|
@@ -67,7 +69,7 @@ module Spree
|
|
67
69
|
self.whitelisted_ransackable_associations = %w[country state user]
|
68
70
|
|
69
71
|
def self.build_default
|
70
|
-
|
72
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
71
73
|
`Address#build_default` is deprecated and will be removed in Spree 5.0.
|
72
74
|
Please use standard rails `Address.new(country: current_store.default_country)`
|
73
75
|
DEPRECATION
|
@@ -75,7 +77,7 @@ module Spree
|
|
75
77
|
end
|
76
78
|
|
77
79
|
def self.default(user = nil, kind = 'bill')
|
78
|
-
|
80
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
79
81
|
`Address#default` is deprecated and will be removed in Spree 5.0.
|
80
82
|
DEPRECATION
|
81
83
|
if user && user_address = user.public_send(:"#{kind}_address")
|
data/app/models/spree/base.rb
CHANGED
@@ -1,6 +1,10 @@
|
|
1
1
|
class Spree::Base < ApplicationRecord
|
2
2
|
include Spree::Preferences::Preferable
|
3
|
-
|
3
|
+
if Rails::VERSION::STRING >= '7.1.0'
|
4
|
+
serialize :preferences, type: Hash, coder: YAML
|
5
|
+
else
|
6
|
+
serialize :preferences, Hash
|
7
|
+
end
|
4
8
|
|
5
9
|
include Spree::RansackableAttributes
|
6
10
|
include Spree::TranslatableResourceScopes
|
@@ -3,11 +3,7 @@ module Spree::Cms::Sections
|
|
3
3
|
after_initialize :default_values
|
4
4
|
validate :reset_multiple_link_attributes
|
5
5
|
|
6
|
-
LINKED_RESOURCE_TYPE =
|
7
|
-
['Spree::Taxon'].freeze
|
8
|
-
else
|
9
|
-
['Spree::Taxon', 'Spree::Product'].freeze
|
10
|
-
end
|
6
|
+
LINKED_RESOURCE_TYPE = ['Spree::Taxon', 'Spree::Product'].freeze
|
11
7
|
|
12
8
|
LAYOUT_OPTIONS = ['Default', 'Reversed'].freeze
|
13
9
|
LABEL_OPTIONS = ['Show', 'Hide'].freeze
|
@@ -71,8 +67,6 @@ module Spree::Cms::Sections
|
|
71
67
|
private
|
72
68
|
|
73
69
|
def reset_multiple_link_attributes
|
74
|
-
return if Rails::VERSION::STRING < '6.0'
|
75
|
-
|
76
70
|
if link_type_one_changed?
|
77
71
|
return if link_type_one_was.nil?
|
78
72
|
|
@@ -3,11 +3,7 @@ module Spree::Cms::Sections
|
|
3
3
|
after_initialize :default_values
|
4
4
|
validate :reset_multiple_link_attributes
|
5
5
|
|
6
|
-
LINKED_RESOURCE_TYPE =
|
7
|
-
['Spree::Taxon'].freeze
|
8
|
-
else
|
9
|
-
['Spree::Taxon', 'Spree::Product'].freeze
|
10
|
-
end
|
6
|
+
LINKED_RESOURCE_TYPE = ['Spree::Taxon', 'Spree::Product'].freeze
|
11
7
|
|
12
8
|
store :content, accessors: [:link_type_one, :link_one, :title_one, :subtitle_one,
|
13
9
|
:link_type_two, :link_two, :title_two, :subtitle_two], coder: JSON
|
@@ -49,8 +45,6 @@ module Spree::Cms::Sections
|
|
49
45
|
private
|
50
46
|
|
51
47
|
def reset_multiple_link_attributes
|
52
|
-
return if Rails::VERSION::STRING < '6.0'
|
53
|
-
|
54
48
|
if link_type_one_changed?
|
55
49
|
return if link_type_one_was.nil?
|
56
50
|
|
data/app/models/spree/country.rb
CHANGED
@@ -19,7 +19,7 @@ module Spree
|
|
19
19
|
validates :name, :iso_name, :iso, :iso3, presence: true, uniqueness: { case_sensitive: false, scope: spree_base_uniqueness_scope }
|
20
20
|
|
21
21
|
def self.default(store = nil)
|
22
|
-
|
22
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
23
23
|
`Country#default` is deprecated and will be removed in Spree 5.0.
|
24
24
|
Please use `current_store.default_country` instead
|
25
25
|
DEPRECATION
|
@@ -49,7 +49,7 @@ module Spree
|
|
49
49
|
private
|
50
50
|
|
51
51
|
def ensure_not_default
|
52
|
-
|
52
|
+
Spree::Deprecation.warn('Country#ensure_not_default is deprecated and will be removed in Spree v5')
|
53
53
|
|
54
54
|
if id.eql?(Spree::Config[:default_country_id])
|
55
55
|
errors.add(:base, Spree.t(:default_country_cannot_be_deleted))
|
data/app/models/spree/order.rb
CHANGED
@@ -415,7 +415,7 @@ module Spree
|
|
415
415
|
|
416
416
|
def available_payment_methods(store = nil)
|
417
417
|
if store.present?
|
418
|
-
|
418
|
+
Spree::Deprecation.warn('The `store` parameter is deprecated and will be removed in Spree 5. Order is already associated with Store')
|
419
419
|
end
|
420
420
|
|
421
421
|
@available_payment_methods ||= collect_payment_methods(store)
|
@@ -449,7 +449,7 @@ module Spree
|
|
449
449
|
end
|
450
450
|
|
451
451
|
def empty!
|
452
|
-
|
452
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
453
453
|
`Order#empty!` is deprecated and will be removed in Spree 5.0.
|
454
454
|
Please use `Spree::Cart::Empty.call(order: order)` instead.
|
455
455
|
DEPRECATION
|
@@ -647,7 +647,7 @@ module Spree
|
|
647
647
|
end
|
648
648
|
|
649
649
|
def validate_payments_attributes(attributes)
|
650
|
-
|
650
|
+
Spree::Deprecation.warn('`Order#validate_payments_attributes` is deprecated and will be removed in Spree 5')
|
651
651
|
|
652
652
|
# Ensure the payment methods specified are allowed for this user
|
653
653
|
payment_method_ids = available_payment_methods.map(&:id).map(&:to_s)
|
@@ -745,7 +745,7 @@ module Spree
|
|
745
745
|
|
746
746
|
def collect_payment_methods(store = nil)
|
747
747
|
if store.present?
|
748
|
-
|
748
|
+
Spree::Deprecation.warn('The `store` parameter is deprecated and will be removed in Spree 5. Order is already associated with Store')
|
749
749
|
end
|
750
750
|
store ||= self.store
|
751
751
|
|
data/app/models/spree/payment.rb
CHANGED
@@ -222,18 +222,10 @@ module Spree
|
|
222
222
|
|
223
223
|
def validate_source
|
224
224
|
if source && !source.valid?
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
add_source_error(err[:field], err[:message])
|
230
|
-
end
|
231
|
-
else
|
232
|
-
source.errors.messages.each do |field, error|
|
233
|
-
next if field.blank? || error.empty?
|
234
|
-
|
235
|
-
add_source_error(field, error.first)
|
236
|
-
end
|
225
|
+
source.errors.map { |error| { field: error.attribute, message: error&.message } }.each do |err|
|
226
|
+
next if err[:field].blank? || err[:message].blank?
|
227
|
+
|
228
|
+
add_source_error(err[:field], err[:message])
|
237
229
|
end
|
238
230
|
end
|
239
231
|
!errors.present?
|
@@ -1,5 +1,9 @@
|
|
1
1
|
class Spree::Preference < Spree::Base
|
2
|
-
|
2
|
+
if Rails::VERSION::STRING >= '7.1.0'
|
3
|
+
serialize :value, coder: YAML
|
4
|
+
else
|
5
|
+
serialize :value
|
6
|
+
end
|
3
7
|
|
4
8
|
validates :key, presence: true,
|
5
9
|
uniqueness: { case_sensitive: false, allow_blank: true, scope: spree_base_uniqueness_scope }
|
data/app/models/spree/product.rb
CHANGED
@@ -507,18 +507,10 @@ module Spree
|
|
507
507
|
# We call master.default_price here to ensure price is initialized.
|
508
508
|
# Required to avoid Variant#check_price validation failing on create.
|
509
509
|
unless master.default_price && master.valid?
|
510
|
-
|
511
|
-
|
512
|
-
next if err[:field].blank? || err[:message].blank?
|
510
|
+
master.errors.map { |error| { field: error.attribute, message: error&.message } }.each do |err|
|
511
|
+
next if err[:field].blank? || err[:message].blank?
|
513
512
|
|
514
|
-
|
515
|
-
end
|
516
|
-
else
|
517
|
-
master.errors.messages.each do |field, error|
|
518
|
-
next if field.blank? || error.empty?
|
519
|
-
|
520
|
-
errors.add(field, error.first)
|
521
|
-
end
|
513
|
+
errors.add(err[:field], err[:message])
|
522
514
|
end
|
523
515
|
end
|
524
516
|
end
|
@@ -33,7 +33,7 @@ module Spree
|
|
33
33
|
delegate :name, :presentation, to: :property, prefix: true, allow_nil: true
|
34
34
|
|
35
35
|
def property_name=(name)
|
36
|
-
|
36
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
37
37
|
`ProductProperty#property_name=` is deprecated and will be removed in Spree 5.0.
|
38
38
|
DEPRECATION
|
39
39
|
if name.present?
|
@@ -62,7 +62,11 @@ module Spree
|
|
62
62
|
scope :exchange_required, -> { eager_load(:exchange_inventory_units).where(spree_inventory_units: { original_return_item_id: nil }).distinct }
|
63
63
|
scope :resellable, -> { where resellable: true }
|
64
64
|
|
65
|
-
|
65
|
+
if Rails::VERSION::STRING >= '7.1.0'
|
66
|
+
serialize :acceptance_status_errors, coder: YAML
|
67
|
+
else
|
68
|
+
serialize :acceptance_status_errors
|
69
|
+
end
|
66
70
|
|
67
71
|
delegate :eligible_for_return?, :requires_manual_intervention?, to: :validator
|
68
72
|
delegate :variant, to: :inventory_unit
|
@@ -15,7 +15,7 @@ module Spree
|
|
15
15
|
private
|
16
16
|
|
17
17
|
def reduce(package)
|
18
|
-
contents = split_package_contents_over_threshold(package).
|
18
|
+
contents = split_package_contents_over_threshold(package).sort_by(&:weight).reverse
|
19
19
|
# Treat current package as one of the generated packages for convenience and add the heaviest item
|
20
20
|
# This also prevents an additional package if no fit is possible
|
21
21
|
package.contents.clear
|
data/app/models/spree/store.rb
CHANGED
@@ -112,7 +112,7 @@ module Spree
|
|
112
112
|
alias_attribute :contact_email, :customer_support_email
|
113
113
|
|
114
114
|
def self.current(url = nil)
|
115
|
-
|
115
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
116
116
|
`Spree::Store.current` is deprecated and will be removed in Spree 5.0
|
117
117
|
Please use `Spree::Stores::FindCurrent.new(url: "https://example.com").execute` instead
|
118
118
|
DEPRECATION
|
@@ -194,7 +194,7 @@ module Spree
|
|
194
194
|
end
|
195
195
|
|
196
196
|
def checkout_zone_or_default
|
197
|
-
|
197
|
+
Spree::Deprecation.warn('Store#checkout_zone_or_default is deprecated and will be removed in Spree 5')
|
198
198
|
|
199
199
|
@checkout_zone_or_default ||= checkout_zone || Spree::Zone.default_checkout_zone
|
200
200
|
end
|
@@ -5,7 +5,11 @@ module Spree
|
|
5
5
|
include Spree::Webhooks::HasWebhooks
|
6
6
|
end
|
7
7
|
|
8
|
-
|
8
|
+
if Rails::VERSION::STRING >= '7.1.0'
|
9
|
+
has_secure_token on: :save
|
10
|
+
else
|
11
|
+
has_secure_token
|
12
|
+
end
|
9
13
|
|
10
14
|
belongs_to :user, class_name: "::#{Spree.user_class}", touch: true
|
11
15
|
belongs_to :store, class_name: 'Spree::Store'
|
data/app/models/spree/zone.rb
CHANGED
@@ -74,7 +74,7 @@ module Spree
|
|
74
74
|
end
|
75
75
|
|
76
76
|
def self.default_checkout_zone
|
77
|
-
|
77
|
+
Spree::Deprecation.warn('Spree::Zone.default_checkout_zone is deprecated and will be removed in Spree 5')
|
78
78
|
|
79
79
|
first
|
80
80
|
end
|
@@ -9,34 +9,19 @@ module Spree
|
|
9
9
|
|
10
10
|
def call
|
11
11
|
ApplicationRecord.transaction do
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
next if EXCLUDED_COUNTRIES.include?(country.alpha_2_code)
|
12
|
+
new_countries = Carmen::Country.all.map do |country|
|
13
|
+
# Skip the creation of some territories, uninhabited islands and the Antarctic.
|
14
|
+
next if EXCLUDED_COUNTRIES.include?(country.alpha_2_code)
|
16
15
|
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
else
|
27
|
-
Carmen::Country.all.each do |country|
|
28
|
-
# Skip the creation of some territories, uninhabited islands and the Antarctic.
|
29
|
-
next if EXCLUDED_COUNTRIES.include?(country.alpha_2_code)
|
30
|
-
|
31
|
-
Spree::Country.where(
|
32
|
-
name: country.name,
|
33
|
-
iso3: country.alpha_3_code,
|
34
|
-
iso: country.alpha_2_code,
|
35
|
-
iso_name: country.name.upcase,
|
36
|
-
numcode: country.numeric_code
|
37
|
-
).first_or_create!
|
38
|
-
end
|
39
|
-
end
|
16
|
+
Hash[
|
17
|
+
'name': country.name,
|
18
|
+
'iso3': country.alpha_3_code,
|
19
|
+
'iso': country.alpha_2_code,
|
20
|
+
'iso_name': country.name.upcase,
|
21
|
+
'numcode': country.numeric_code,
|
22
|
+
]
|
23
|
+
end.compact.uniq
|
24
|
+
Spree::Country.insert_all(new_countries)
|
40
25
|
|
41
26
|
# Find countries that do not use postal codes (by iso) and set 'zipcode_required' to false for them.
|
42
27
|
Spree::Country.where(iso: Spree::Address::NO_ZIPCODE_ISO_CODES).update_all(zipcode_required: false)
|
@@ -49,23 +49,14 @@ module Spree
|
|
49
49
|
end
|
50
50
|
|
51
51
|
def province_level(country, subregion)
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
Spree::State.insert_all(new_states)
|
61
|
-
else
|
62
|
-
subregion.subregions.each do |province|
|
63
|
-
country.states.where(
|
64
|
-
name: province.name,
|
65
|
-
abbr: province.code
|
66
|
-
).first_or_create!
|
67
|
-
end
|
68
|
-
end
|
52
|
+
new_states = subregion.subregions.map do |province|
|
53
|
+
Hash[
|
54
|
+
name: province.name,
|
55
|
+
abbr: province.code,
|
56
|
+
country_id: country.id
|
57
|
+
]
|
58
|
+
end.compact.uniq
|
59
|
+
Spree::State.insert_all(new_states)
|
69
60
|
end
|
70
61
|
end
|
71
62
|
end
|
@@ -5,24 +5,18 @@ module Spree
|
|
5
5
|
prepend Spree::ServiceModule::Base
|
6
6
|
|
7
7
|
def call(stock_location:, variants_scope: Spree::Variant)
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
variants_scope.touch_all
|
21
|
-
end
|
22
|
-
else
|
23
|
-
variants_scope.find_each do |variant|
|
24
|
-
stock_location.propagate_variant(variant)
|
25
|
-
end
|
8
|
+
prepared_stock_items = variants_scope.ids.map do |variant_id|
|
9
|
+
Hash[
|
10
|
+
'stock_location_id', stock_location.id,
|
11
|
+
'variant_id', variant_id,
|
12
|
+
'backorderable', stock_location.backorderable_default,
|
13
|
+
'created_at', Time.current,
|
14
|
+
'updated_at', Time.current
|
15
|
+
]
|
16
|
+
end
|
17
|
+
if prepared_stock_items.any?
|
18
|
+
stock_location.stock_items.insert_all(prepared_stock_items)
|
19
|
+
variants_scope.touch_all
|
26
20
|
end
|
27
21
|
end
|
28
22
|
end
|
@@ -2,16 +2,12 @@
|
|
2
2
|
# Validates a field based on the maximum length of the underlying DB field, if there is one.
|
3
3
|
class DbMaximumLengthValidator < ActiveModel::EachValidator
|
4
4
|
def validate_each(record, attribute, value)
|
5
|
-
|
5
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
6
6
|
`DbMaximumLengthValidator` is deprecated and will be removed in Spree 5.0.
|
7
7
|
Please remove any `db_maximum_length: true` validations from your codebase
|
8
8
|
DEPRECATION
|
9
9
|
|
10
|
-
limit =
|
11
|
-
record.class.translation_class.columns_hash[attribute.to_s].limit
|
12
|
-
else
|
13
|
-
record.class.columns_hash[attribute.to_s].limit
|
14
|
-
end
|
10
|
+
limit = record.class.columns_hash[attribute.to_s].limit
|
15
11
|
value = record[attribute.to_sym]
|
16
12
|
if value && limit && value.to_s.length > limit
|
17
13
|
record.errors.add(attribute.to_sym, :too_long, count: limit)
|
data/config/locales/en.yml
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
en:
|
2
2
|
activemodel:
|
3
3
|
errors:
|
4
|
+
messages:
|
5
|
+
blank: can't be blank
|
4
6
|
models:
|
5
7
|
spree/fulfilment_changer:
|
6
8
|
attributes:
|
@@ -309,6 +311,8 @@ en:
|
|
309
311
|
one: Zone
|
310
312
|
other: Zones
|
311
313
|
errors:
|
314
|
+
messages:
|
315
|
+
blank: can't be blank
|
312
316
|
models:
|
313
317
|
spree/calculator/tiered_flat_rate:
|
314
318
|
attributes:
|
@@ -1572,6 +1576,7 @@ en:
|
|
1572
1576
|
starting_from: Starts at
|
1573
1577
|
state: State
|
1574
1578
|
state_based: State Based
|
1579
|
+
state_changes: State Changes
|
1575
1580
|
states: States
|
1576
1581
|
state_machine_states:
|
1577
1582
|
accepted: Accepted
|
@@ -1750,6 +1755,7 @@ en:
|
|
1750
1755
|
transfer_from_location: Transfer From
|
1751
1756
|
transfer_stock: Transfer Stock
|
1752
1757
|
transfer_to_location: Transfer To
|
1758
|
+
translations: Translations
|
1753
1759
|
tree: Tree
|
1754
1760
|
type: Type
|
1755
1761
|
type_to_search: Type to search
|
@@ -76,7 +76,7 @@ module Spree
|
|
76
76
|
|
77
77
|
# searcher_class allows spree extension writers to provide their own Search class
|
78
78
|
def searcher_class
|
79
|
-
|
79
|
+
Spree::Deprecation.warn('`Spree::Config.searcher_class` is deprecated and will be removed in Spree v5, please use `Spree.searcher_class` instead.')
|
80
80
|
@searcher_class ||= Spree.searcher_class
|
81
81
|
end
|
82
82
|
|
@@ -75,7 +75,7 @@ module Spree
|
|
75
75
|
# Override this method in your controllers if you want to have special behavior in case the user is not authorized
|
76
76
|
# to access the requested action. For example, a popup window might simply close itself.
|
77
77
|
def redirect_unauthorized_access
|
78
|
-
|
78
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
79
79
|
Core::ControllerHelpers#redirect_unauthorized_access is deprecated and will be removed in Spree 5.0.
|
80
80
|
This method is implemented differently for Storefront and Admin
|
81
81
|
DEPRECATION
|
@@ -17,7 +17,7 @@ module Spree
|
|
17
17
|
attr_writer :title
|
18
18
|
|
19
19
|
def title
|
20
|
-
|
20
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
21
21
|
ControllerHelpers::Common is deprecated and will be removed in Spree 5.0.
|
22
22
|
DEPRECATION
|
23
23
|
title_string = @title.present? ? @title : accurate_title
|
@@ -33,7 +33,7 @@ module Spree
|
|
33
33
|
end
|
34
34
|
|
35
35
|
def default_title
|
36
|
-
|
36
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
37
37
|
ControllerHelpers::Common is deprecated and will be removed in Spree 5.0.
|
38
38
|
DEPRECATION
|
39
39
|
current_store.name
|
@@ -41,7 +41,7 @@ module Spree
|
|
41
41
|
|
42
42
|
# this is a hook for subclasses to provide title
|
43
43
|
def accurate_title
|
44
|
-
|
44
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
45
45
|
ControllerHelpers::Common is deprecated and will be removed in Spree 5.0.
|
46
46
|
DEPRECATION
|
47
47
|
current_store.seo_title
|
@@ -50,7 +50,7 @@ module Spree
|
|
50
50
|
private
|
51
51
|
|
52
52
|
def set_user_language
|
53
|
-
|
53
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
54
54
|
ControllerHelpers::Common#set_user_language is deprecated and will be removed in Spree 5.0.
|
55
55
|
Please use `before_action :set_locale` instead
|
56
56
|
DEPRECATION
|
@@ -65,7 +65,7 @@ module Spree
|
|
65
65
|
# Default layout is: +app/views/spree/layouts/spree_application+
|
66
66
|
#
|
67
67
|
def get_layout
|
68
|
-
|
68
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
69
69
|
ControllerHelpers::Common is deprecated and will be removed in Spree 5.0.
|
70
70
|
DEPRECATION
|
71
71
|
return unless defined?(Spree::Frontend)
|
data/lib/spree/core/engine.rb
CHANGED
@@ -27,6 +27,7 @@ module Spree
|
|
27
27
|
app.config.active_record.yaml_column_permitted_classes = [Symbol, BigDecimal]
|
28
28
|
Spree::Config = app.config.spree.preferences
|
29
29
|
Spree::Dependencies = app.config.spree.dependencies
|
30
|
+
Spree::Deprecation = ActiveSupport::Deprecation.new
|
30
31
|
end
|
31
32
|
|
32
33
|
initializer 'spree.register.calculators', before: :after_initialize do |app|
|
@@ -19,7 +19,7 @@ module Spree::Preferences
|
|
19
19
|
value = convert_preference_value(value, type)
|
20
20
|
preferences[name] = value
|
21
21
|
|
22
|
-
|
22
|
+
Spree::Deprecation.warn("`#{name}` is deprecated. #{deprecated}") if deprecated
|
23
23
|
|
24
24
|
# If this is an activerecord object, we need to inform
|
25
25
|
# ActiveRecord::Dirty that this value has changed, since this is an
|
data/lib/spree/core/version.rb
CHANGED
@@ -8,7 +8,7 @@ module Spree
|
|
8
8
|
end
|
9
9
|
|
10
10
|
def spree_get(action, parameters = nil, session = nil, flash = nil)
|
11
|
-
|
11
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
12
12
|
ControllerRequests#spree_get is deprecated and will be removed in Spree 5.0.
|
13
13
|
Please use get, params: {}
|
14
14
|
DEPRECATION
|
@@ -17,7 +17,7 @@ module Spree
|
|
17
17
|
|
18
18
|
# Executes a request simulating POST HTTP method and set/volley the response
|
19
19
|
def spree_post(action, parameters = nil, session = nil, flash = nil)
|
20
|
-
|
20
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
21
21
|
ControllerRequests#spree_post is deprecated and will be removed in Spree 5.0.
|
22
22
|
Please use post, params: {}
|
23
23
|
DEPRECATION
|
@@ -26,7 +26,7 @@ module Spree
|
|
26
26
|
|
27
27
|
# Executes a request simulating PUT HTTP method and set/volley the response
|
28
28
|
def spree_put(action, parameters = nil, session = nil, flash = nil)
|
29
|
-
|
29
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
30
30
|
ControllerRequests#spree_put is deprecated and will be removed in Spree 5.0.
|
31
31
|
Please use put, params: {}
|
32
32
|
DEPRECATION
|
@@ -35,7 +35,7 @@ module Spree
|
|
35
35
|
|
36
36
|
# # Executes a request simulating PATCH HTTP method and set/volley the response
|
37
37
|
def spree_patch(action, parameters = nil, session = nil, flash = nil)
|
38
|
-
|
38
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
39
39
|
ControllerRequests#spree_patch is deprecated and will be removed in Spree 5.0.
|
40
40
|
Please use patch, params: {}
|
41
41
|
DEPRECATION
|
@@ -44,7 +44,7 @@ module Spree
|
|
44
44
|
|
45
45
|
# Executes a request simulating DELETE HTTP method and set/volley the response
|
46
46
|
def spree_delete(action, parameters = nil, session = nil, flash = nil)
|
47
|
-
|
47
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
48
48
|
ControllerRequests#spree_delete is deprecated and will be removed in Spree 5.0.
|
49
49
|
Please use delete, params: {}
|
50
50
|
DEPRECATION
|
@@ -52,35 +52,35 @@ module Spree
|
|
52
52
|
end
|
53
53
|
|
54
54
|
def spree_xhr_get(action, parameters = nil, session = nil, flash = nil)
|
55
|
-
|
55
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
56
56
|
ControllerRequests#spree_xhr_get is deprecated and will be removed in Spree 5.0.
|
57
57
|
DEPRECATION
|
58
58
|
process_spree_xhr_action(action, parameters, session, flash, :get)
|
59
59
|
end
|
60
60
|
|
61
61
|
def spree_xhr_post(action, parameters = nil, session = nil, flash = nil)
|
62
|
-
|
62
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
63
63
|
ControllerRequests#spree_xhr_post is deprecated and will be removed in Spree 5.0.
|
64
64
|
DEPRECATION
|
65
65
|
process_spree_xhr_action(action, parameters, session, flash, :post)
|
66
66
|
end
|
67
67
|
|
68
68
|
def spree_xhr_put(action, parameters = nil, session = nil, flash = nil)
|
69
|
-
|
69
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
70
70
|
ControllerRequests#spree_xhr_put is deprecated and will be removed in Spree 5.0.
|
71
71
|
DEPRECATION
|
72
72
|
process_spree_xhr_action(action, parameters, session, flash, :put)
|
73
73
|
end
|
74
74
|
|
75
75
|
def spree_xhr_patch(action, parameters = nil, session = nil, flash = nil)
|
76
|
-
|
76
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
77
77
|
ControllerRequests#spree_xhr_patch is deprecated and will be removed in Spree 5.0.
|
78
78
|
DEPRECATION
|
79
79
|
process_spree_xhr_action(action, parameters, session, flash, :patch)
|
80
80
|
end
|
81
81
|
|
82
82
|
def spree_xhr_delete(action, parameters = nil, session = nil, flash = nil)
|
83
|
-
|
83
|
+
Spree::Deprecation.warn(<<-DEPRECATION, caller)
|
84
84
|
ControllerRequests#spree_xhr_delete is deprecated and will be removed in Spree 5.0.
|
85
85
|
DEPRECATION
|
86
86
|
process_spree_xhr_action(action, parameters, session, flash, :delete)
|
data/spree_core.gemspec
CHANGED
@@ -20,7 +20,7 @@ Gem::Specification.new do |s|
|
|
20
20
|
"source_code_uri" => "https://github.com/spree/spree/tree/v#{s.version}",
|
21
21
|
}
|
22
22
|
|
23
|
-
s.required_ruby_version = '>=
|
23
|
+
s.required_ruby_version = '>= 3.0'
|
24
24
|
s.required_rubygems_version = '>= 1.8.23'
|
25
25
|
|
26
26
|
s.files = `git ls-files`.split("\n").reject { |f| f.match(/^spec/) && !f.match(/^spec\/fixtures/) }
|
@@ -30,7 +30,7 @@ Gem::Specification.new do |s|
|
|
30
30
|
actionpack actionview activejob activemodel activerecord
|
31
31
|
activestorage activesupport railties
|
32
32
|
].each do |rails_gem|
|
33
|
-
s.add_dependency rails_gem, '>= 6.1', '< 7.
|
33
|
+
s.add_dependency rails_gem, '>= 6.1', '< 7.2'
|
34
34
|
end
|
35
35
|
|
36
36
|
s.add_dependency 'activemerchant', '~> 1.67'
|
@@ -45,7 +45,7 @@ Gem::Specification.new do |s|
|
|
45
45
|
s.add_dependency 'money', '~> 6.13'
|
46
46
|
s.add_dependency 'monetize', '~> 1.9'
|
47
47
|
s.add_dependency 'paranoia', '~> 2.4'
|
48
|
-
s.add_dependency 'ransack', '>=
|
48
|
+
s.add_dependency 'ransack', '>= 4.1'
|
49
49
|
s.add_dependency 'rexml'
|
50
50
|
s.add_dependency 'state_machines-activerecord', '~> 0.6'
|
51
51
|
s.add_dependency 'state_machines-activemodel', '~> 0.7'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spree_core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.7.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sean Schofield
|
@@ -20,7 +20,7 @@ dependencies:
|
|
20
20
|
version: '6.1'
|
21
21
|
- - "<"
|
22
22
|
- !ruby/object:Gem::Version
|
23
|
-
version: '7.
|
23
|
+
version: '7.2'
|
24
24
|
type: :runtime
|
25
25
|
prerelease: false
|
26
26
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -30,7 +30,7 @@ dependencies:
|
|
30
30
|
version: '6.1'
|
31
31
|
- - "<"
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '7.
|
33
|
+
version: '7.2'
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: actionview
|
36
36
|
requirement: !ruby/object:Gem::Requirement
|
@@ -40,7 +40,7 @@ dependencies:
|
|
40
40
|
version: '6.1'
|
41
41
|
- - "<"
|
42
42
|
- !ruby/object:Gem::Version
|
43
|
-
version: '7.
|
43
|
+
version: '7.2'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
46
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -50,7 +50,7 @@ dependencies:
|
|
50
50
|
version: '6.1'
|
51
51
|
- - "<"
|
52
52
|
- !ruby/object:Gem::Version
|
53
|
-
version: '7.
|
53
|
+
version: '7.2'
|
54
54
|
- !ruby/object:Gem::Dependency
|
55
55
|
name: activejob
|
56
56
|
requirement: !ruby/object:Gem::Requirement
|
@@ -60,7 +60,7 @@ dependencies:
|
|
60
60
|
version: '6.1'
|
61
61
|
- - "<"
|
62
62
|
- !ruby/object:Gem::Version
|
63
|
-
version: '7.
|
63
|
+
version: '7.2'
|
64
64
|
type: :runtime
|
65
65
|
prerelease: false
|
66
66
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -70,7 +70,7 @@ dependencies:
|
|
70
70
|
version: '6.1'
|
71
71
|
- - "<"
|
72
72
|
- !ruby/object:Gem::Version
|
73
|
-
version: '7.
|
73
|
+
version: '7.2'
|
74
74
|
- !ruby/object:Gem::Dependency
|
75
75
|
name: activemodel
|
76
76
|
requirement: !ruby/object:Gem::Requirement
|
@@ -80,7 +80,7 @@ dependencies:
|
|
80
80
|
version: '6.1'
|
81
81
|
- - "<"
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version: '7.
|
83
|
+
version: '7.2'
|
84
84
|
type: :runtime
|
85
85
|
prerelease: false
|
86
86
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -90,7 +90,7 @@ dependencies:
|
|
90
90
|
version: '6.1'
|
91
91
|
- - "<"
|
92
92
|
- !ruby/object:Gem::Version
|
93
|
-
version: '7.
|
93
|
+
version: '7.2'
|
94
94
|
- !ruby/object:Gem::Dependency
|
95
95
|
name: activerecord
|
96
96
|
requirement: !ruby/object:Gem::Requirement
|
@@ -100,7 +100,7 @@ dependencies:
|
|
100
100
|
version: '6.1'
|
101
101
|
- - "<"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: '7.
|
103
|
+
version: '7.2'
|
104
104
|
type: :runtime
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -110,7 +110,7 @@ dependencies:
|
|
110
110
|
version: '6.1'
|
111
111
|
- - "<"
|
112
112
|
- !ruby/object:Gem::Version
|
113
|
-
version: '7.
|
113
|
+
version: '7.2'
|
114
114
|
- !ruby/object:Gem::Dependency
|
115
115
|
name: activestorage
|
116
116
|
requirement: !ruby/object:Gem::Requirement
|
@@ -120,7 +120,7 @@ dependencies:
|
|
120
120
|
version: '6.1'
|
121
121
|
- - "<"
|
122
122
|
- !ruby/object:Gem::Version
|
123
|
-
version: '7.
|
123
|
+
version: '7.2'
|
124
124
|
type: :runtime
|
125
125
|
prerelease: false
|
126
126
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -130,7 +130,7 @@ dependencies:
|
|
130
130
|
version: '6.1'
|
131
131
|
- - "<"
|
132
132
|
- !ruby/object:Gem::Version
|
133
|
-
version: '7.
|
133
|
+
version: '7.2'
|
134
134
|
- !ruby/object:Gem::Dependency
|
135
135
|
name: activesupport
|
136
136
|
requirement: !ruby/object:Gem::Requirement
|
@@ -140,7 +140,7 @@ dependencies:
|
|
140
140
|
version: '6.1'
|
141
141
|
- - "<"
|
142
142
|
- !ruby/object:Gem::Version
|
143
|
-
version: '7.
|
143
|
+
version: '7.2'
|
144
144
|
type: :runtime
|
145
145
|
prerelease: false
|
146
146
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -150,7 +150,7 @@ dependencies:
|
|
150
150
|
version: '6.1'
|
151
151
|
- - "<"
|
152
152
|
- !ruby/object:Gem::Version
|
153
|
-
version: '7.
|
153
|
+
version: '7.2'
|
154
154
|
- !ruby/object:Gem::Dependency
|
155
155
|
name: railties
|
156
156
|
requirement: !ruby/object:Gem::Requirement
|
@@ -160,7 +160,7 @@ dependencies:
|
|
160
160
|
version: '6.1'
|
161
161
|
- - "<"
|
162
162
|
- !ruby/object:Gem::Version
|
163
|
-
version: '7.
|
163
|
+
version: '7.2'
|
164
164
|
type: :runtime
|
165
165
|
prerelease: false
|
166
166
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -170,7 +170,7 @@ dependencies:
|
|
170
170
|
version: '6.1'
|
171
171
|
- - "<"
|
172
172
|
- !ruby/object:Gem::Version
|
173
|
-
version: '7.
|
173
|
+
version: '7.2'
|
174
174
|
- !ruby/object:Gem::Dependency
|
175
175
|
name: activemerchant
|
176
176
|
requirement: !ruby/object:Gem::Requirement
|
@@ -357,20 +357,14 @@ dependencies:
|
|
357
357
|
requirements:
|
358
358
|
- - ">="
|
359
359
|
- !ruby/object:Gem::Version
|
360
|
-
version: '
|
361
|
-
- - "<"
|
362
|
-
- !ruby/object:Gem::Version
|
363
|
-
version: '3.0'
|
360
|
+
version: '4.1'
|
364
361
|
type: :runtime
|
365
362
|
prerelease: false
|
366
363
|
version_requirements: !ruby/object:Gem::Requirement
|
367
364
|
requirements:
|
368
365
|
- - ">="
|
369
366
|
- !ruby/object:Gem::Version
|
370
|
-
version: '
|
371
|
-
- - "<"
|
372
|
-
- !ruby/object:Gem::Version
|
373
|
-
version: '3.0'
|
367
|
+
version: '4.1'
|
374
368
|
- !ruby/object:Gem::Dependency
|
375
369
|
name: rexml
|
376
370
|
requirement: !ruby/object:Gem::Requirement
|
@@ -1127,9 +1121,9 @@ licenses:
|
|
1127
1121
|
- BSD-3-Clause
|
1128
1122
|
metadata:
|
1129
1123
|
bug_tracker_uri: https://github.com/spree/spree/issues
|
1130
|
-
changelog_uri: https://github.com/spree/spree/releases/tag/v4.
|
1124
|
+
changelog_uri: https://github.com/spree/spree/releases/tag/v4.7.0
|
1131
1125
|
documentation_uri: https://dev-docs.spreecommerce.org/
|
1132
|
-
source_code_uri: https://github.com/spree/spree/tree/v4.
|
1126
|
+
source_code_uri: https://github.com/spree/spree/tree/v4.7.0
|
1133
1127
|
post_install_message:
|
1134
1128
|
rdoc_options: []
|
1135
1129
|
require_paths:
|
@@ -1138,7 +1132,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
1138
1132
|
requirements:
|
1139
1133
|
- - ">="
|
1140
1134
|
- !ruby/object:Gem::Version
|
1141
|
-
version:
|
1135
|
+
version: '3.0'
|
1142
1136
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
1143
1137
|
requirements:
|
1144
1138
|
- - ">="
|