solidus_core 2.11.1 → 3.0.0.rc2

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.

Potentially problematic release.


This version of solidus_core might be problematic. Click here for more details.

Files changed (198) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/spree.js.erb +0 -51
  3. data/app/helpers/spree/store_helper.rb +0 -11
  4. data/app/mailers/spree/carton_mailer.rb +1 -5
  5. data/app/models/concerns/spree/adjustment_source.rb +0 -15
  6. data/app/models/concerns/spree/calculated_adjustments.rb +0 -18
  7. data/app/models/concerns/spree/soft_deletable.rb +2 -4
  8. data/app/models/concerns/spree/user_address_book.rb +0 -37
  9. data/app/models/concerns/spree/user_methods.rb +2 -11
  10. data/app/models/spree/ability.rb +0 -37
  11. data/app/models/spree/address.rb +7 -162
  12. data/app/models/spree/address/name.rb +2 -20
  13. data/app/models/spree/adjustment.rb +0 -28
  14. data/app/models/spree/base.rb +1 -12
  15. data/app/models/spree/calculator.rb +4 -11
  16. data/app/models/spree/calculator/flexi_rate.rb +0 -5
  17. data/app/models/spree/country.rb +1 -6
  18. data/app/models/spree/credit_card.rb +0 -27
  19. data/app/models/spree/customer_return.rb +1 -4
  20. data/app/models/spree/image.rb +0 -7
  21. data/app/models/spree/inventory_unit.rb +0 -21
  22. data/app/models/spree/line_item.rb +2 -45
  23. data/app/models/spree/order.rb +3 -136
  24. data/app/models/spree/order/payments.rb +2 -2
  25. data/app/models/spree/order_cancellations.rb +4 -24
  26. data/app/models/spree/order_merger.rb +1 -1
  27. data/app/models/spree/order_updater.rb +2 -11
  28. data/app/models/spree/payment.rb +10 -6
  29. data/app/models/spree/payment/cancellation.rb +3 -22
  30. data/app/models/spree/payment_create.rb +1 -13
  31. data/app/models/spree/payment_method.rb +2 -103
  32. data/app/models/spree/payment_method/credit_card.rb +1 -3
  33. data/app/models/spree/payment_source.rb +2 -2
  34. data/app/models/spree/product.rb +8 -41
  35. data/app/models/spree/product/scopes.rb +0 -28
  36. data/app/models/spree/promotion.rb +2 -6
  37. data/app/models/spree/promotion/actions/create_adjustment.rb +0 -3
  38. data/app/models/spree/promotion/actions/create_item_adjustments.rb +0 -3
  39. data/app/models/spree/promotion/actions/create_quantity_adjustments.rb +0 -3
  40. data/app/models/spree/promotion/rules/taxon.rb +2 -15
  41. data/app/models/spree/promotion_action.rb +2 -9
  42. data/app/models/spree/promotion_code/batch_builder.rb +0 -14
  43. data/app/models/spree/refund.rb +3 -47
  44. data/app/models/spree/reimbursement.rb +3 -41
  45. data/app/models/spree/reimbursement_performer.rb +2 -8
  46. data/app/models/spree/reimbursement_type/credit.rb +1 -4
  47. data/app/models/spree/reimbursement_type/reimbursement_helpers.rb +1 -2
  48. data/app/models/spree/reimbursement_type/store_credit.rb +1 -4
  49. data/app/models/spree/return_authorization.rb +1 -4
  50. data/app/models/spree/return_item.rb +1 -19
  51. data/app/models/spree/shipment.rb +1 -54
  52. data/app/models/spree/shipping_method.rb +1 -26
  53. data/app/models/spree/shipping_rate.rb +0 -2
  54. data/app/models/spree/state.rb +0 -4
  55. data/app/models/spree/stock/availability_validator.rb +2 -2
  56. data/app/models/spree/stock/inventory_validator.rb +2 -2
  57. data/app/models/spree/stock/simple_coordinator.rb +0 -14
  58. data/app/models/spree/stock/splitter/base.rb +2 -7
  59. data/app/models/spree/stock_item.rb +1 -7
  60. data/app/models/spree/store.rb +0 -12
  61. data/app/models/spree/store_credit_category.rb +0 -32
  62. data/app/models/spree/tax_calculator/shipping_rate.rb +1 -12
  63. data/app/models/spree/tax_rate.rb +0 -27
  64. data/app/models/spree/taxon.rb +0 -11
  65. data/app/models/spree/taxon/active_storage_attachment.rb +0 -6
  66. data/app/models/spree/taxon/paperclip_attachment.rb +0 -4
  67. data/app/models/spree/user_address.rb +0 -5
  68. data/app/models/spree/variant.rb +1 -45
  69. data/config/locales/en.yml +0 -8
  70. data/db/migrate/20210122110141_add_name_to_spree_addresses.rb +13 -0
  71. data/lib/generators/solidus/install/install_generator.rb +12 -1
  72. data/lib/generators/solidus/install/templates/config/initializers/spree.rb.tt +3 -39
  73. data/lib/generators/spree/dummy/dummy_generator.rb +2 -1
  74. data/lib/generators/spree/dummy/templates/rails/database.yml +6 -1
  75. data/lib/generators/spree/dummy/templates/rails/storage.yml +3 -0
  76. data/lib/generators/spree/dummy/templates/rails/test.rb +6 -1
  77. data/lib/spree/app_configuration.rb +7 -66
  78. data/lib/spree/core.rb +10 -12
  79. data/lib/spree/core/class_constantizer.rb +2 -0
  80. data/lib/spree/core/controller_helpers/auth.rb +1 -14
  81. data/lib/spree/core/controller_helpers/order.rb +2 -22
  82. data/lib/spree/core/controller_helpers/payment_parameters.rb +0 -54
  83. data/lib/spree/core/controller_helpers/pricing.rb +0 -8
  84. data/lib/spree/core/controller_helpers/strong_parameters.rb +0 -4
  85. data/lib/spree/core/engine.rb +6 -42
  86. data/lib/spree/core/environment_extension.rb +0 -9
  87. data/lib/spree/core/product_filters.rb +0 -40
  88. data/lib/spree/core/role_configuration.rb +0 -14
  89. data/lib/spree/core/search/base.rb +0 -26
  90. data/lib/spree/core/state_machines.rb +2 -11
  91. data/lib/spree/core/version.rb +1 -1
  92. data/lib/spree/event.rb +0 -31
  93. data/lib/spree/event/configuration.rb +0 -5
  94. data/lib/spree/event/subscriber.rb +0 -18
  95. data/lib/spree/event/subscriber_registry.rb +3 -1
  96. data/lib/spree/i18n.rb +0 -22
  97. data/lib/spree/money.rb +3 -18
  98. data/lib/spree/permitted_attributes.rb +2 -53
  99. data/lib/spree/testing_support.rb +31 -0
  100. data/lib/spree/testing_support/capybara_ext.rb +0 -30
  101. data/lib/spree/testing_support/controller_requests.rb +0 -82
  102. data/lib/spree/testing_support/dummy_app.rb +10 -16
  103. data/lib/spree/testing_support/dummy_app/mailer_previews/test_mailer_preview.rb +4 -0
  104. data/lib/spree/testing_support/dummy_app/migrations.rb +0 -3
  105. data/lib/spree/testing_support/factories.rb +8 -4
  106. data/lib/spree/testing_support/factories/address_factory.rb +6 -2
  107. data/lib/spree/testing_support/factories/adjustment_factory.rb +10 -5
  108. data/lib/spree/testing_support/factories/adjustment_reason_factory.rb +5 -0
  109. data/lib/spree/testing_support/factories/calculator_factory.rb +5 -0
  110. data/lib/spree/testing_support/factories/carton_factory.rb +7 -2
  111. data/lib/spree/testing_support/factories/country_factory.rb +5 -0
  112. data/lib/spree/testing_support/factories/credit_card_factory.rb +5 -0
  113. data/lib/spree/testing_support/factories/customer_return_factory.rb +8 -3
  114. data/lib/spree/testing_support/factories/image_factory.rb +5 -0
  115. data/lib/spree/testing_support/factories/inventory_unit_factory.rb +9 -4
  116. data/lib/spree/testing_support/factories/line_item_factory.rb +7 -2
  117. data/lib/spree/testing_support/factories/option_type_factory.rb +8 -0
  118. data/lib/spree/testing_support/factories/option_value_factory.rb +5 -0
  119. data/lib/spree/testing_support/factories/order_factory.rb +11 -7
  120. data/lib/spree/testing_support/factories/order_promotion_factory.rb +7 -2
  121. data/lib/spree/testing_support/factories/payment_factory.rb +9 -4
  122. data/lib/spree/testing_support/factories/payment_method_factory.rb +5 -0
  123. data/lib/spree/testing_support/factories/price_factory.rb +6 -1
  124. data/lib/spree/testing_support/factories/product_factory.rb +10 -5
  125. data/lib/spree/testing_support/factories/product_option_type_factory.rb +7 -2
  126. data/lib/spree/testing_support/factories/product_property_factory.rb +7 -2
  127. data/lib/spree/testing_support/factories/promotion_category_factory.rb +5 -0
  128. data/lib/spree/testing_support/factories/promotion_code_factory.rb +7 -2
  129. data/lib/spree/testing_support/factories/promotion_factory.rb +7 -2
  130. data/lib/spree/testing_support/factories/property_factory.rb +5 -0
  131. data/lib/spree/testing_support/factories/refund_factory.rb +7 -3
  132. data/lib/spree/testing_support/factories/refund_reason_factory.rb +5 -0
  133. data/lib/spree/testing_support/factories/reimbursement_factory.rb +6 -1
  134. data/lib/spree/testing_support/factories/reimbursement_type_factory.rb +5 -0
  135. data/lib/spree/testing_support/factories/return_authorization_factory.rb +8 -3
  136. data/lib/spree/testing_support/factories/return_item_factory.rb +8 -3
  137. data/lib/spree/testing_support/factories/return_reason_factory.rb +5 -0
  138. data/lib/spree/testing_support/factories/role_factory.rb +5 -0
  139. data/lib/spree/testing_support/factories/shipment_factory.rb +9 -3
  140. data/lib/spree/testing_support/factories/shipping_category_factory.rb +5 -0
  141. data/lib/spree/testing_support/factories/shipping_method_factory.rb +8 -3
  142. data/lib/spree/testing_support/factories/shipping_rate_factory.rb +7 -2
  143. data/lib/spree/testing_support/factories/state_factory.rb +7 -1
  144. data/lib/spree/testing_support/factories/stock_item_factory.rb +7 -2
  145. data/lib/spree/testing_support/factories/stock_location_factory.rb +8 -3
  146. data/lib/spree/testing_support/factories/stock_movement_factory.rb +6 -1
  147. data/lib/spree/testing_support/factories/stock_package_factory.rb +7 -2
  148. data/lib/spree/testing_support/factories/store_credit_category_factory.rb +5 -0
  149. data/lib/spree/testing_support/factories/store_credit_event_factory.rb +7 -2
  150. data/lib/spree/testing_support/factories/store_credit_factory.rb +8 -3
  151. data/lib/spree/testing_support/factories/store_credit_reason_factory.rb +5 -0
  152. data/lib/spree/testing_support/factories/store_credit_type_factory.rb +5 -0
  153. data/lib/spree/testing_support/factories/store_factory.rb +6 -1
  154. data/lib/spree/testing_support/factories/tax_category_factory.rb +7 -1
  155. data/lib/spree/testing_support/factories/tax_rate_factory.rb +8 -3
  156. data/lib/spree/testing_support/factories/taxon_factory.rb +6 -1
  157. data/lib/spree/testing_support/factories/taxonomy_factory.rb +5 -0
  158. data/lib/spree/testing_support/factories/user_factory.rb +8 -3
  159. data/lib/spree/testing_support/factories/variant_factory.rb +9 -4
  160. data/lib/spree/testing_support/factories/variant_property_rule_condition_factory.rb +7 -2
  161. data/lib/spree/testing_support/factories/variant_property_rule_factory.rb +8 -3
  162. data/lib/spree/testing_support/factories/variant_property_rule_value_factory.rb +7 -2
  163. data/lib/spree/testing_support/factories/zone_factory.rb +7 -2
  164. data/lib/spree/testing_support/factory_bot.rb +68 -0
  165. data/lib/spree/testing_support/order_walkthrough.rb +10 -13
  166. data/lib/spree/testing_support/preferences.rb +0 -25
  167. data/lib/spree/testing_support/sequences.rb +4 -1
  168. data/{app/models → lib}/spree/user_class_handle.rb +0 -0
  169. data/lib/tasks/migrations/migrate_address_names.rake +158 -0
  170. data/lib/tasks/migrations/migrate_default_billing_addresses_to_address_book.rake +38 -0
  171. data/lib/tasks/upgrade.rake +13 -0
  172. data/solidus_core.gemspec +3 -4
  173. metadata +32 -63
  174. data/app/mailers/spree/test_mailer.rb +0 -13
  175. data/app/models/concerns/spree/user_payment_source.rb +0 -26
  176. data/app/models/spree/calculator/free_shipping.rb +0 -21
  177. data/app/models/spree/calculator/percent_per_item.rb +0 -49
  178. data/app/models/spree/calculator/price_sack.rb +0 -27
  179. data/app/models/spree/gateway.rb +0 -14
  180. data/app/models/spree/gateway/bogus.rb +0 -13
  181. data/app/models/spree/gateway/bogus_simple.rb +0 -13
  182. data/app/models/spree/order/checkout.rb +0 -244
  183. data/app/models/spree/order_capturing.rb +0 -50
  184. data/app/models/spree/promotion_handler/free_shipping.rb +0 -9
  185. data/lib/generators/spree/install/install_generator.rb +0 -15
  186. data/lib/solidus/migrations/rename_gateways.rb +0 -41
  187. data/lib/spree/awesome_nested_set_override.rb +0 -44
  188. data/lib/spree/core/current_store.rb +0 -24
  189. data/lib/spree/paranoia_deprecations.rb +0 -41
  190. data/lib/spree/promo/environment.rb +0 -12
  191. data/lib/spree/testing_support/bar_ability.rb +0 -19
  192. data/lib/tasks/core.rake +0 -104
  193. data/lib/tasks/email.rake +0 -11
  194. data/lib/tasks/migrations/copy_order_bill_address_to_credit_card.rake +0 -119
  195. data/lib/tasks/migrations/migrate_shipping_rate_taxes.rake +0 -22
  196. data/lib/tasks/migrations/migrate_user_addresses.rake +0 -34
  197. data/lib/tasks/migrations/rename_gateways.rake +0 -23
  198. data/lib/tasks/order_capturing.rake +0 -27
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require 'active_support/core_ext/module'
4
+
3
5
  module Spree
4
6
  module Core
5
7
  module ClassConstantizer
@@ -22,20 +22,7 @@ module Spree
22
22
  class_attribute :unauthorized_redirect
23
23
  self.unauthorized_redirect = -> do
24
24
  flash[:error] = I18n.t('spree.authorization_failure')
25
- if Spree::Config.redirect_back_on_unauthorized
26
- redirect_back(fallback_location: "/unauthorized")
27
- else
28
- Spree::Deprecation.warn <<-WARN.strip_heredoc, caller
29
- Having Spree::Config.redirect_back_on_unauthorized set
30
- to `false` is deprecated and will not be supported in Solidus 3.0.
31
-
32
- Please change this configuration to `true` and be sure that your
33
- application does not break trying to redirect back when there is
34
- an unauthorized access.
35
- WARN
36
-
37
- redirect_to "/unauthorized"
38
- end
25
+ redirect_back(fallback_location: "/unauthorized")
39
26
  end
40
27
 
41
28
  rescue_from CanCan::AccessDenied do
@@ -11,23 +11,8 @@ module Spree
11
11
 
12
12
  included do
13
13
  helper_method :current_order
14
- helper_method :simple_current_order
15
14
  end
16
15
 
17
- def simple_current_order
18
- return @simple_current_order if @simple_current_order
19
-
20
- @simple_current_order = find_order_by_token_or_user
21
-
22
- if @simple_current_order
23
- @simple_current_order.last_ip_address = ip_address
24
- return @simple_current_order
25
- else
26
- @simple_current_order = Spree::Order.new(current_order_params)
27
- end
28
- end
29
- deprecate simple_current_order: :current_order, deprecator: Spree::Deprecation
30
-
31
16
  # The current incomplete order from the guest_token for use in cart and during checkout
32
17
  def current_order(options = {})
33
18
  should_create = options[:create_order_if_necessary] || false
@@ -84,16 +69,11 @@ module Spree
84
69
  current_order_params.merge(last_ip_address: ip_address)
85
70
  end
86
71
 
87
- def find_order_by_token_or_user(options = {}, with_adjustments = false)
72
+ def find_order_by_token_or_user(options = {})
88
73
  should_lock = options[:lock] || false
89
74
 
90
75
  # Find any incomplete orders for the guest_token
91
- if with_adjustments
92
- Spree::Deprecation.warn "The second argument to find_order_by_token_or_user is deprecated, and will be removed in a future version."
93
- order = Spree::Order.incomplete.includes(:adjustments).lock(should_lock).find_by(current_order_params)
94
- else
95
- order = Spree::Order.incomplete.lock(should_lock).find_by(current_order_params)
96
- end
76
+ order = Spree::Order.incomplete.lock(should_lock).find_by(current_order_params)
97
77
 
98
78
  # Find any incomplete orders for the current user
99
79
  if order.nil? && try_spree_current_user
@@ -64,60 +64,6 @@ module Spree
64
64
  params
65
65
  end
66
66
 
67
- # This method handles the awkwardness of how the html forms are currently
68
- # set up for frontend.
69
- #
70
- # This method expects a params hash in the format of:
71
- #
72
- # {
73
- # order: {
74
- # existing_card: '123',
75
- # ...other params...
76
- # },
77
- # cvc_confirm: '456', # optional
78
- # ...other params...
79
- # }
80
- #
81
- # And this method modifies the params into the format of:
82
- #
83
- # {
84
- # order: {
85
- # payments_attributes: [
86
- # {
87
- # source_attributes: {
88
- # existing_card_id: '123',
89
- # verification_value: '456',
90
- # },
91
- # },
92
- # ]
93
- # ...other params...
94
- # },
95
- # ...other params...
96
- # }
97
- #
98
- def move_existing_card_into_payments_attributes(params)
99
- return params if params[:order].blank?
100
-
101
- card_id = params[:order][:existing_card].presence
102
- cvc_confirm = params[:cvc_confirm].presence
103
-
104
- return params if card_id.nil?
105
-
106
- params[:order][:payments_attributes] = [
107
- {
108
- source_attributes: {
109
- existing_card_id: card_id,
110
- verification_value: cvc_confirm
111
- }
112
- }
113
- ]
114
-
115
- params[:order].delete(:existing_card)
116
- params.delete(:cvc_confirm)
117
-
118
- params
119
- end
120
-
121
67
  # This method handles the awkwardness of how the html forms are currently
122
68
  # set up for frontend.
123
69
  #
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'spree/deprecation'
4
-
5
3
  module Spree
6
4
  module Core
7
5
  module ControllerHelpers
@@ -9,18 +7,12 @@ module Spree
9
7
  extend ActiveSupport::Concern
10
8
 
11
9
  included do
12
- helper_method :current_currency
13
10
  helper_method :current_pricing_options
14
11
  end
15
12
 
16
13
  def current_pricing_options
17
14
  Spree::Config.pricing_options_class.from_context(self)
18
15
  end
19
-
20
- def current_currency
21
- current_pricing_options.currency
22
- end
23
- deprecate current_currency: :current_pricing_options, deprecator: Spree::Deprecation
24
16
  end
25
17
  end
26
18
  end
@@ -30,10 +30,6 @@ module Spree
30
30
  ]
31
31
  end
32
32
 
33
- def permitted_checkout_attributes
34
- permitted_attributes.checkout_attributes
35
- end
36
-
37
33
  def permitted_checkout_address_attributes
38
34
  permitted_attributes.checkout_address_attributes
39
35
  end
@@ -56,49 +56,13 @@ module Spree
56
56
  end
57
57
 
58
58
  config.after_initialize do
59
- if Spree::Config.raise_with_invalid_currency == true
60
- Spree::Deprecation.warn(
61
- 'Spree::Config.raise_with_invalid_currency set to true is ' \
62
- 'deprecated. Please note that by switching this value, ' \
63
- 'Spree::LineItem::CurrencyMismatch will not be raised anymore.',
64
- caller
65
- )
66
- end
67
- if Spree::Config.consider_actionless_promotion_active == true
68
- Spree::Deprecation.warn(
69
- 'Spree::Config.consider_actionless_promotion_active set to true is ' \
70
- 'deprecated. Please note that by switching this value, ' \
71
- 'promotions with no actions will be considered active.',
72
- caller
73
- )
74
- end
75
- if Spree::Config.run_order_validations_on_order_updater != true
76
- Spree::Deprecation.warn(
77
- 'Spree::Config.run_order_validations_on_order_updater set to false is ' \
78
- 'deprecated and will not be possibile in Solidus 3.0. Please switch this ' \
79
- 'value to true and check that everything works as expected.',
80
- caller
81
- )
82
- end
83
-
84
- if Spree::Config.use_legacy_address_state_validator != false
85
- Spree::Deprecation.warn(<<~DEPRECATION.squish, caller)
86
- Spree::Config.use_legacy_address_state_validator set to true has been
87
- deprecated and will be removed in Solidus 3.0. The Spree::Address state
88
- validation has been extracted into a configurable external class.
89
- Switch Spree::Config.use_legacy_address_state_validator to true to start
90
- using the external validation class.
91
- DEPRECATION
92
- end
93
- end
94
-
95
- # Load in mailer previews for apps to use in development.
96
- # We need to make sure we call `Preview.all` before requiring our
97
- # previews, otherwise any previews the app attempts to add need to be
98
- # manually required.
99
- if Rails.env.development?
100
- initializer "spree.mailer_previews" do
59
+ # Load in mailer previews for apps to use in development.
60
+ # We need to make sure we call `Preview.all` before requiring our
61
+ # previews, otherwise any previews the app attempts to add need to be
62
+ # manually required.
63
+ if Rails.env.development? || Rails.env.test?
101
64
  ActionMailer::Preview.all
65
+
102
66
  Dir[root.join("lib/spree/mailer_previews/**/*_preview.rb")].each do |file|
103
67
  require_dependency file
104
68
  end
@@ -22,15 +22,6 @@ module Spree
22
22
  end
23
23
  end
24
24
  end
25
-
26
- def add_class(name)
27
- Spree::Deprecation.warn(
28
- 'This method is deprecated. ' \
29
- "Please use `#{self.class}.add_class_set(#{name.inspect})` instead.",
30
- caller,
31
- )
32
- singleton_class.send(:add_class_set, name)
33
- end
34
25
  end
35
26
  end
36
27
  end
@@ -153,46 +153,6 @@ module Spree
153
153
  labels: brands.sort.map { |key| [key, key] }
154
154
  }
155
155
  end
156
-
157
- # Provide filtering on the immediate children of a taxon
158
- #
159
- # This doesn't fit the pattern of the examples above, so there's a few changes.
160
- # Firstly, it uses an existing scope which was not built for filtering - and so
161
- # has no need of a conditions mapping, and secondly, it has a mapping of name
162
- # to the argument type expected by the other scope.
163
- #
164
- # This technique is useful for filtering on objects (by passing ids) or with a
165
- # scope that can be used directly (eg. testing only ever on a single property).
166
- #
167
- # This scope selects products in any of the active taxons or their children.
168
- #
169
- def self.taxons_below(taxon)
170
- Spree::Deprecation.warn "taxons_below is deprecated in solidus_core. Please add it to your own application to continue using it."
171
- return Spree::Core::ProductFilters.all_taxons if taxon.nil?
172
- {
173
- name: 'Taxons under ' + taxon.name,
174
- scope: :taxons_id_in_tree_any,
175
- labels: taxon.children.sort_by(&:position).map { |element| [element.name, element.id] },
176
- conds: nil
177
- }
178
- end
179
-
180
- # Filtering by the list of all taxons
181
- #
182
- # Similar idea as above, but we don't want the descendants' products, hence
183
- # it uses one of the auto-generated scopes from Ransack.
184
- #
185
- # idea: expand the format to allow nesting of labels?
186
- def self.all_taxons
187
- Spree::Deprecation.warn "all_taxons is deprecated in solidus_core. Please add it to your own application to continue using it."
188
- taxons = Spree::Taxonomy.all.flat_map { |element| [element.root] + element.root.descendants }
189
- {
190
- name: 'All taxons',
191
- scope: :taxons_id_equals_any,
192
- labels: taxons.sort_by(&:name).map { |element| [element.name, element.id] },
193
- conds: nil # not needed
194
- }
195
- end
196
156
  end
197
157
  end
198
158
  end
@@ -31,20 +31,6 @@ module Spree
31
31
 
32
32
  attr_accessor :roles
33
33
 
34
- class << self
35
- def instance
36
- Spree::Deprecation.warn "Spree::RoleConfiguration.instance is DEPRECATED use Spree::Config.roles instead"
37
- Spree::Config.roles
38
- end
39
-
40
- # Yields the instance of the singleton, used for configuration
41
- # @yieldparam instance [Spree::RoleConfiguration]
42
- def configure
43
- Spree::Deprecation.warn "Spree::RoleConfiguration.configure is deprecated. Call Spree::Config.roles.assign_permissions instead"
44
- yield(Spree::Config.roles)
45
- end
46
- end
47
-
48
34
  # Given a CanCan::Ability, and a user, determine what permissions sets can
49
35
  # be activated on the ability, then activate them.
50
36
  #
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require 'spree/deprecation'
4
-
5
3
  module Spree
6
4
  module Core
7
5
  module Search
@@ -16,17 +14,6 @@ module Spree
16
14
  prepare(params)
17
15
  end
18
16
 
19
- def current_currency=(currency)
20
- self.pricing_options = Spree::Config.pricing_options_class.new(
21
- pricing_options.desired_attributes.merge(currency: currency)
22
- )
23
- end
24
-
25
- def current_currency
26
- pricing_options.currency
27
- end
28
- deprecate :current_currency, :current_currency=, deprecator: Spree::Deprecation
29
-
30
17
  def retrieve_products
31
18
  @products = get_base_scope
32
19
  curr_page = @properties[:page] || 1
@@ -37,19 +24,6 @@ module Spree
37
24
  @products = @products.page(curr_page).per(@properties[:per_page])
38
25
  end
39
26
 
40
- def method_missing(name)
41
- if @properties.key?(name)
42
- Spree::Deprecation.warn "Accessing Searcher's #{name} property using #{self.class.name}##{name} is deprecated without replacement"
43
- @properties[name]
44
- else
45
- super
46
- end
47
- end
48
-
49
- def respond_to_missing?(name)
50
- @properties.key?(name) || super(name)
51
- end
52
-
53
27
  protected
54
28
 
55
29
  def get_base_scope
@@ -68,17 +68,8 @@ module Spree
68
68
 
69
69
  def order
70
70
  @order ||= begin
71
- if Spree::Config.use_legacy_order_state_machine
72
- Spree::Deprecation.warn(
73
- "Spree::Order state machine defined in Spree::Order::Checkout is deprecated. " \
74
- "Future versions of Solidus will use Spree::Core::StateMachines::Order}",
75
- caller
76
- )
77
- 'Spree::Order::Checkout'
78
- else
79
- require 'spree/core/state_machines/order'
80
- 'Spree::Core::StateMachines::Order'
81
- end
71
+ require 'spree/core/state_machines/order'
72
+ 'Spree::Core::StateMachines::Order'
82
73
  end
83
74
 
84
75
  @order.constantize
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Spree
4
- VERSION = "2.11.1"
4
+ VERSION = "3.0.0.rc2"
5
5
 
6
6
  def self.solidus_version
7
7
  VERSION
data/lib/spree/event.rb CHANGED
@@ -29,20 +29,6 @@ module Spree
29
29
  end
30
30
  end
31
31
 
32
- # @deprecated Loads all Solidus' core and application's event subscribers files.
33
- # The latter are loaded automatically only when the preference
34
- # Spree::Config.events.autoload_subscribers is set to a truthy value.
35
- #
36
- # Files must be placed under the directory `app/subscribers` and their
37
- # name must end with `_subscriber.rb`.
38
- #
39
- # Loading the files has the side effect of adding their module to the
40
- # list in Spree::Event.subscribers.
41
- def require_subscriber_files
42
- Spree::Deprecation.warn("#{self}.require_subscriber_files is deprecated and will be removed in Solidus 3.0.", caller)
43
- subscriber_registry.send(:require_subscriber_files)
44
- end
45
-
46
32
  # Subscribe to an event with the given name. The provided block is executed
47
33
  # every time the subscribed event is fired.
48
34
  #
@@ -114,23 +100,6 @@ module Spree
114
100
  Spree::Config.events.adapter
115
101
  end
116
102
 
117
- # The suffix used for namespacing Solidus events, defaults to
118
- # `.spree`
119
- #
120
- # @see Spree::Event::Configuration#suffix
121
- def suffix
122
- Spree::Deprecation.warn "This method is deprecated and will be removed. Please use Event::Adapters::ActiveSupportNotifications#suffix"
123
- Spree::Config.events.suffix
124
- end
125
-
126
- # @deprecated
127
- # @!attribute [r] subscribers
128
- # @return [Array<Spree::Event::Subscriber>] A list of subscribers used to support class reloading for Spree::Event::Subscriber instances
129
- def subscribers
130
- Spree::Deprecation.warn("`#{self}.subscribers` is deprecated. Please use `#{self}.subscriber_registry` instead.", caller)
131
- Spree::Config.events.subscribers
132
- end
133
-
134
103
  # @!attribute [r] subscribers
135
104
  # @return <Spree::Event::SubscriberRegistry> The registry for supporting class reloading for Spree::Event::Subscriber instances
136
105
  def subscriber_registry
@@ -7,11 +7,6 @@ module Spree
7
7
  @subscriber_registry ||= Spree::Event::SubscriberRegistry.new
8
8
  end
9
9
 
10
- def subscribers
11
- Spree::Deprecation.warn("`Spree::Config.events.subscribers` is deprecated. Please use `Spree::Config.events.subscriber_registry`.", caller)
12
- subscriber_registry.send(:registry).keys.map { |module_name| module_name.constantize }
13
- end
14
-
15
10
  attr_writer :adapter, :suffix, :autoload_subscribers
16
11
 
17
12
  def autoload_subscribers