spree_core 4.2.0.beta → 4.2.0.rc5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (121) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/spree/base_controller.rb +2 -3
  3. data/app/controllers/spree/errors_controller.rb +11 -0
  4. data/app/finders/spree/addresses/find.rb +6 -0
  5. data/app/finders/spree/base_finder.rb +14 -0
  6. data/app/finders/spree/countries/find.rb +11 -3
  7. data/app/finders/spree/credit_cards/find.rb +2 -2
  8. data/app/finders/spree/orders/find_current.rb +2 -2
  9. data/app/finders/spree/products/find.rb +12 -1
  10. data/app/helpers/spree/base_helper.rb +38 -18
  11. data/app/helpers/spree/locale_helper.rb +19 -0
  12. data/app/helpers/spree/mail_helper.rb +12 -7
  13. data/app/helpers/spree/products_helper.rb +39 -13
  14. data/app/mailers/spree/base_mailer.rb +5 -5
  15. data/app/mailers/spree/order_mailer.rb +3 -3
  16. data/app/mailers/spree/reimbursement_mailer.rb +1 -1
  17. data/app/mailers/spree/shipment_mailer.rb +1 -1
  18. data/app/models/concerns/spree/default_price.rb +1 -5
  19. data/app/models/concerns/spree/user_methods.rb +2 -2
  20. data/app/models/concerns/spree/user_payment_source.rb +1 -1
  21. data/app/models/spree/ability.rb +45 -34
  22. data/app/models/spree/address.rb +17 -1
  23. data/app/models/spree/adjustment.rb +1 -0
  24. data/app/models/spree/app_configuration.rb +2 -3
  25. data/app/models/spree/app_dependencies.rb +10 -2
  26. data/app/models/spree/base.rb +5 -0
  27. data/app/models/spree/credit_card.rb +5 -0
  28. data/app/models/spree/fulfilment_changer.rb +58 -16
  29. data/app/models/spree/image.rb +14 -14
  30. data/app/models/spree/inventory_unit.rb +2 -7
  31. data/app/models/spree/line_item.rb +9 -16
  32. data/app/models/spree/log_entry.rb +1 -1
  33. data/app/models/spree/option_type.rb +2 -0
  34. data/app/models/spree/order.rb +12 -6
  35. data/app/models/spree/order/address_book.rb +7 -20
  36. data/app/models/spree/order/payments.rb +10 -2
  37. data/app/models/spree/payment.rb +18 -4
  38. data/app/models/spree/payment/processing.rb +2 -2
  39. data/app/models/spree/payment_method.rb +3 -3
  40. data/app/models/spree/preferences/store.rb +1 -1
  41. data/app/models/spree/price.rb +1 -6
  42. data/app/models/spree/product.rb +24 -17
  43. data/app/models/spree/promotion.rb +10 -15
  44. data/app/models/spree/promotion/rules/option_value.rb +1 -1
  45. data/app/models/spree/promotion/rules/product.rb +2 -1
  46. data/app/models/spree/promotion/rules/user.rb +2 -1
  47. data/app/models/spree/promotion_handler/coupon.rb +1 -2
  48. data/app/models/spree/promotion_handler/promotion_duplicator.rb +9 -3
  49. data/app/models/spree/refund.rb +2 -2
  50. data/app/models/spree/return_item/eligibility_validator/default.rb +0 -2
  51. data/app/models/spree/return_item/eligibility_validator/{r_m_a_required.rb → rma_required.rb} +0 -0
  52. data/app/models/spree/shipment.rb +1 -1
  53. data/app/models/spree/shipping_method.rb +1 -5
  54. data/app/models/spree/shipping_rate.rb +2 -11
  55. data/app/models/spree/stock/availability_validator.rb +3 -4
  56. data/app/models/spree/stock_item.rb +1 -5
  57. data/app/models/spree/store.rb +45 -1
  58. data/app/models/spree/store_credit.rb +1 -1
  59. data/app/models/spree/variant.rb +8 -15
  60. data/app/models/spree/zone.rb +17 -4
  61. data/app/presenters/spree/variant_presenter.rb +4 -6
  62. data/app/services/spree/account/addresses/create.rb +23 -0
  63. data/app/services/spree/account/addresses/helper.rb +37 -0
  64. data/app/services/spree/account/addresses/update.rb +23 -0
  65. data/app/services/spree/cart/estimate_shipping_rates.rb +1 -1
  66. data/app/services/spree/checkout/update.rb +13 -2
  67. data/app/services/spree/compare_line_items.rb +4 -2
  68. data/app/sorters/spree/base_sorter.rb +35 -0
  69. data/app/sorters/spree/orders/sort.rb +1 -37
  70. data/app/sorters/spree/products/sort.rb +9 -32
  71. data/app/validators/email_validator.rb +1 -1
  72. data/app/views/spree/errors/forbidden.html.erb +0 -0
  73. data/app/views/spree/errors/unauthorized.html.erb +0 -0
  74. data/app/views/spree/shared/_base_mailer_stylesheets.html.erb +0 -2
  75. data/app/views/spree/shared/purchased_items_table/_line_item.html.erb +1 -1
  76. data/config/initializers/inflections.rb +3 -0
  77. data/config/initializers/rails61_fixes.rb +3 -0
  78. data/config/locales/en.yml +42 -63
  79. data/config/routes.rb +2 -1
  80. data/db/default/spree/countries.rb +10 -4
  81. data/db/default/spree/states.rb +42 -5
  82. data/db/default/spree/stores.rb +18 -13
  83. data/db/default/spree/zones.rb +5 -2
  84. data/db/migrate/20130326175857_add_stock_location_to_rma.rb +1 -1
  85. data/db/migrate/20200610113542_add_label_to_spree_addresses.rb +5 -0
  86. data/db/migrate/20201006110150_add_checkout_zone_field_to_store.rb +12 -0
  87. data/db/migrate/20201012091259_add_filterable_column_to_spree_option_types.rb +6 -0
  88. data/db/migrate/20201013084504_add_seo_robots_to_spree_stores.rb +5 -0
  89. data/db/migrate/20201127084048_add_default_country_kind_to_spree_zones.rb +5 -0
  90. data/db/migrate/20210112193440_remove_contact_email_from_spree_stores.rb +5 -0
  91. data/db/migrate/20210114182625_create_spree_payment_methods_stores.rb +10 -0
  92. data/db/migrate/20210114220232_migrate_data_payment_methods_stores.rb +15 -0
  93. data/db/migrate/20210117112551_remove_store_id_from_spree_payment_methods.rb +5 -0
  94. data/db/migrate/20210120142527_ensure_default_locale_in_spree_stores.rb +5 -0
  95. data/lib/generators/spree/install/templates/config/spree_storefront.yml +9 -9
  96. data/lib/spree/core.rb +3 -1
  97. data/lib/spree/core/controller_helpers/auth.rb +3 -1
  98. data/lib/spree/core/controller_helpers/common.rb +6 -8
  99. data/lib/spree/core/controller_helpers/currency.rb +45 -0
  100. data/lib/spree/core/controller_helpers/locale.rb +57 -0
  101. data/lib/spree/core/controller_helpers/order.rb +9 -4
  102. data/lib/spree/core/controller_helpers/store.rb +4 -16
  103. data/lib/spree/core/importer/order.rb +9 -9
  104. data/lib/spree/core/product_filters.rb +3 -3
  105. data/lib/spree/core/version.rb +1 -1
  106. data/lib/spree/i18n.rb +7 -21
  107. data/lib/spree/permitted_attributes.rb +3 -3
  108. data/lib/spree/service_module.rb +6 -2
  109. data/lib/spree/testing_support/capybara_config.rb +1 -1
  110. data/lib/spree/testing_support/factories/promotion_factory.rb +29 -17
  111. data/lib/spree/testing_support/factories/shipment_factory.rb +7 -9
  112. data/lib/spree/testing_support/factories/stock_location_factory.rb +2 -2
  113. data/lib/spree/testing_support/factories/zone_factory.rb +16 -13
  114. data/lib/spree/testing_support/i18n.rb +1 -1
  115. data/lib/spree/testing_support/order_walkthrough.rb +8 -3
  116. data/lib/spree/testing_support/rspec_retry_config.rb +10 -0
  117. data/spree_core.gemspec +7 -5
  118. metadata +90 -28
  119. data/lib/spree/core/controller_helpers/currency_helpers.rb +0 -15
  120. data/lib/spree/i18n/base.rb +0 -17
  121. data/lib/spree/i18n/initializer.rb +0 -1
metadata CHANGED
@@ -1,15 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.2.0.beta
4
+ version: 4.2.0.rc5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sean Schofield
8
8
  - Spark Solutions
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2020-09-07 00:00:00.000000000 Z
12
+ date: 2021-02-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activemerchant
@@ -45,20 +45,20 @@ dependencies:
45
45
  requirements:
46
46
  - - ">="
47
47
  - !ruby/object:Gem::Version
48
- version: 3.1.4
48
+ version: 3.3.1
49
49
  - - "<"
50
50
  - !ruby/object:Gem::Version
51
- version: 3.3.0
51
+ version: '4.0'
52
52
  type: :runtime
53
53
  prerelease: false
54
54
  version_requirements: !ruby/object:Gem::Requirement
55
55
  requirements:
56
56
  - - ">="
57
57
  - !ruby/object:Gem::Version
58
- version: 3.1.4
58
+ version: 3.3.1
59
59
  - - "<"
60
60
  - !ruby/object:Gem::Version
61
- version: 3.3.0
61
+ version: '4.0'
62
62
  - !ruby/object:Gem::Dependency
63
63
  name: carmen
64
64
  requirement: !ruby/object:Gem::Requirement
@@ -85,14 +85,14 @@ dependencies:
85
85
  requirements:
86
86
  - - "~>"
87
87
  - !ruby/object:Gem::Version
88
- version: '3.0'
88
+ version: '3.2'
89
89
  type: :runtime
90
90
  prerelease: false
91
91
  version_requirements: !ruby/object:Gem::Requirement
92
92
  requirements:
93
93
  - - "~>"
94
94
  - !ruby/object:Gem::Version
95
- version: '3.0'
95
+ version: '3.2'
96
96
  - !ruby/object:Gem::Dependency
97
97
  name: ffaker
98
98
  requirement: !ruby/object:Gem::Requirement
@@ -215,30 +215,42 @@ dependencies:
215
215
  name: rails
216
216
  requirement: !ruby/object:Gem::Requirement
217
217
  requirements:
218
- - - "~>"
218
+ - - ">="
219
219
  - !ruby/object:Gem::Version
220
- version: 6.0.0
220
+ version: '6.0'
221
+ - - "<"
222
+ - !ruby/object:Gem::Version
223
+ version: '6.2'
221
224
  type: :runtime
222
225
  prerelease: false
223
226
  version_requirements: !ruby/object:Gem::Requirement
224
227
  requirements:
225
- - - "~>"
228
+ - - ">="
229
+ - !ruby/object:Gem::Version
230
+ version: '6.0'
231
+ - - "<"
226
232
  - !ruby/object:Gem::Version
227
- version: 6.0.0
233
+ version: '6.2'
228
234
  - !ruby/object:Gem::Dependency
229
235
  name: ransack
230
236
  requirement: !ruby/object:Gem::Requirement
231
237
  requirements:
232
- - - "~>"
238
+ - - ">="
233
239
  - !ruby/object:Gem::Version
234
- version: 2.3.0
240
+ version: '2.3'
241
+ - - "<"
242
+ - !ruby/object:Gem::Version
243
+ version: '2.5'
235
244
  type: :runtime
236
245
  prerelease: false
237
246
  version_requirements: !ruby/object:Gem::Requirement
238
247
  requirements:
239
- - - "~>"
248
+ - - ">="
249
+ - !ruby/object:Gem::Version
250
+ version: '2.3'
251
+ - - "<"
240
252
  - !ruby/object:Gem::Version
241
- version: 2.3.0
253
+ version: '2.5'
242
254
  - !ruby/object:Gem::Dependency
243
255
  name: responders
244
256
  requirement: !ruby/object:Gem::Requirement
@@ -253,6 +265,20 @@ dependencies:
253
265
  - - ">="
254
266
  - !ruby/object:Gem::Version
255
267
  version: '0'
268
+ - !ruby/object:Gem::Dependency
269
+ name: rexml
270
+ requirement: !ruby/object:Gem::Requirement
271
+ requirements:
272
+ - - ">="
273
+ - !ruby/object:Gem::Version
274
+ version: '0'
275
+ type: :runtime
276
+ prerelease: false
277
+ version_requirements: !ruby/object:Gem::Requirement
278
+ requirements:
279
+ - - ">="
280
+ - !ruby/object:Gem::Version
281
+ version: '0'
256
282
  - !ruby/object:Gem::Dependency
257
283
  name: state_machines-activerecord
258
284
  requirement: !ruby/object:Gem::Requirement
@@ -352,7 +378,7 @@ dependencies:
352
378
  version: 4.9.4
353
379
  - - "<"
354
380
  - !ruby/object:Gem::Version
355
- version: 4.11.0
381
+ version: 4.12.0
356
382
  type: :runtime
357
383
  prerelease: false
358
384
  version_requirements: !ruby/object:Gem::Requirement
@@ -362,7 +388,7 @@ dependencies:
362
388
  version: 4.9.4
363
389
  - - "<"
364
390
  - !ruby/object:Gem::Version
365
- version: 4.11.0
391
+ version: 4.12.0
366
392
  - !ruby/object:Gem::Dependency
367
393
  name: image_processing
368
394
  requirement: !ruby/object:Gem::Requirement
@@ -377,6 +403,20 @@ dependencies:
377
403
  - - "~>"
378
404
  - !ruby/object:Gem::Version
379
405
  version: '1.2'
406
+ - !ruby/object:Gem::Dependency
407
+ name: active_storage_validations
408
+ requirement: !ruby/object:Gem::Requirement
409
+ requirements:
410
+ - - "~>"
411
+ - !ruby/object:Gem::Version
412
+ version: '0.9'
413
+ type: :runtime
414
+ prerelease: false
415
+ version_requirements: !ruby/object:Gem::Requirement
416
+ requirements:
417
+ - - "~>"
418
+ - !ruby/object:Gem::Version
419
+ version: '0.9'
380
420
  - !ruby/object:Gem::Dependency
381
421
  name: email_spec
382
422
  requirement: !ruby/object:Gem::Requirement
@@ -407,6 +447,9 @@ files:
407
447
  - app/assets/images/noimage/small.png
408
448
  - app/assets/javascripts/spree.js
409
449
  - app/controllers/spree/base_controller.rb
450
+ - app/controllers/spree/errors_controller.rb
451
+ - app/finders/spree/addresses/find.rb
452
+ - app/finders/spree/base_finder.rb
410
453
  - app/finders/spree/countries/find.rb
411
454
  - app/finders/spree/credit_cards/find.rb
412
455
  - app/finders/spree/line_items/find_by_variant.rb
@@ -417,6 +460,7 @@ files:
417
460
  - app/finders/spree/variants/option_types_finder.rb
418
461
  - app/finders/spree/variants/visible_finder.rb
419
462
  - app/helpers/spree/base_helper.rb
463
+ - app/helpers/spree/locale_helper.rb
420
464
  - app/helpers/spree/mail_helper.rb
421
465
  - app/helpers/spree/products_helper.rb
422
466
  - app/mailers/spree/base_mailer.rb
@@ -564,7 +608,7 @@ files:
564
608
  - app/models/spree/return_item/eligibility_validator/inventory_shipped.rb
565
609
  - app/models/spree/return_item/eligibility_validator/no_reimbursements.rb
566
610
  - app/models/spree/return_item/eligibility_validator/order_completed.rb
567
- - app/models/spree/return_item/eligibility_validator/r_m_a_required.rb
611
+ - app/models/spree/return_item/eligibility_validator/rma_required.rb
568
612
  - app/models/spree/return_item/eligibility_validator/time_since_purchase.rb
569
613
  - app/models/spree/return_item/exchange_variant_eligibility/same_option_value.rb
570
614
  - app/models/spree/return_item/exchange_variant_eligibility/same_product.rb
@@ -620,6 +664,9 @@ files:
620
664
  - app/presenters/spree/variant_presenter.rb
621
665
  - app/presenters/spree/variants/option_types_presenter.rb
622
666
  - app/presenters/spree/variants/options_presenter.rb
667
+ - app/services/spree/account/addresses/create.rb
668
+ - app/services/spree/account/addresses/helper.rb
669
+ - app/services/spree/account/addresses/update.rb
623
670
  - app/services/spree/cart/add_item.rb
624
671
  - app/services/spree/cart/create.rb
625
672
  - app/services/spree/cart/estimate_shipping_rates.rb
@@ -637,11 +684,14 @@ files:
637
684
  - app/services/spree/checkout/update.rb
638
685
  - app/services/spree/compare_line_items.rb
639
686
  - app/services/spree/generate_token.rb
687
+ - app/sorters/spree/base_sorter.rb
640
688
  - app/sorters/spree/orders/sort.rb
641
689
  - app/sorters/spree/products/sort.rb
642
690
  - app/validators/db_maximum_length_validator.rb
643
691
  - app/validators/email_validator.rb
644
692
  - app/views/layouts/spree/base_mailer.html.erb
693
+ - app/views/spree/errors/forbidden.html.erb
694
+ - app/views/spree/errors/unauthorized.html.erb
645
695
  - app/views/spree/order_mailer/cancel_email.html.erb
646
696
  - app/views/spree/order_mailer/cancel_email.text.erb
647
697
  - app/views/spree/order_mailer/confirm_email.html.erb
@@ -668,8 +718,10 @@ files:
668
718
  - config/initializers/active_storage.rb
669
719
  - config/initializers/assets.rb
670
720
  - config/initializers/friendly_id.rb
721
+ - config/initializers/inflections.rb
671
722
  - config/initializers/premailer_assets.rb
672
723
  - config/initializers/premailer_rails.rb
724
+ - config/initializers/rails61_fixes.rb
673
725
  - config/initializers/state_machine.rb
674
726
  - config/locales/en.yml
675
727
  - config/routes.rb
@@ -956,7 +1008,17 @@ files:
956
1008
  - db/migrate/20200513154939_add_show_property_to_spree_product_properties.rb
957
1009
  - db/migrate/20200607161221_add_store_owner_order_notification_delivered_to_spree_orders.rb
958
1010
  - db/migrate/20200607161222_add_new_order_notifications_email_to_spree_stores.rb
1011
+ - db/migrate/20200610113542_add_label_to_spree_addresses.rb
959
1012
  - db/migrate/20200826075557_add_unique_index_on_taxon_id_and_product_id_to_spree_products_taxons.rb
1013
+ - db/migrate/20201006110150_add_checkout_zone_field_to_store.rb
1014
+ - db/migrate/20201012091259_add_filterable_column_to_spree_option_types.rb
1015
+ - db/migrate/20201013084504_add_seo_robots_to_spree_stores.rb
1016
+ - db/migrate/20201127084048_add_default_country_kind_to_spree_zones.rb
1017
+ - db/migrate/20210112193440_remove_contact_email_from_spree_stores.rb
1018
+ - db/migrate/20210114182625_create_spree_payment_methods_stores.rb
1019
+ - db/migrate/20210114220232_migrate_data_payment_methods_stores.rb
1020
+ - db/migrate/20210117112551_remove_store_id_from_spree_payment_methods.rb
1021
+ - db/migrate/20210120142527_ensure_default_locale_in_spree_stores.rb
960
1022
  - db/seeds.rb
961
1023
  - lib/friendly_id/slug_rails5_patch.rb
962
1024
  - lib/generators/spree/custom_user/custom_user_generator.rb
@@ -992,7 +1054,8 @@ files:
992
1054
  - lib/spree/core/components.rb
993
1055
  - lib/spree/core/controller_helpers/auth.rb
994
1056
  - lib/spree/core/controller_helpers/common.rb
995
- - lib/spree/core/controller_helpers/currency_helpers.rb
1057
+ - lib/spree/core/controller_helpers/currency.rb
1058
+ - lib/spree/core/controller_helpers/locale.rb
996
1059
  - lib/spree/core/controller_helpers/order.rb
997
1060
  - lib/spree/core/controller_helpers/search.rb
998
1061
  - lib/spree/core/controller_helpers/store.rb
@@ -1016,8 +1079,6 @@ files:
1016
1079
  - lib/spree/database_type_utilities.rb
1017
1080
  - lib/spree/dependencies_helper.rb
1018
1081
  - lib/spree/i18n.rb
1019
- - lib/spree/i18n/base.rb
1020
- - lib/spree/i18n/initializer.rb
1021
1082
  - lib/spree/localized_number.rb
1022
1083
  - lib/spree/migrations.rb
1023
1084
  - lib/spree/money.rb
@@ -1089,6 +1150,7 @@ files:
1089
1150
  - lib/spree/testing_support/kernel.rb
1090
1151
  - lib/spree/testing_support/order_walkthrough.rb
1091
1152
  - lib/spree/testing_support/preferences.rb
1153
+ - lib/spree/testing_support/rspec_retry_config.rb
1092
1154
  - lib/spree/testing_support/url_helpers.rb
1093
1155
  - lib/spree_core.rb
1094
1156
  - lib/tasks/core.rake
@@ -1108,10 +1170,10 @@ licenses:
1108
1170
  - BSD-3-Clause
1109
1171
  metadata:
1110
1172
  bug_tracker_uri: https://github.com/spree/spree/issues
1111
- changelog_uri: https://github.com/spree/spree/releases/tag/v4.2.0.beta
1173
+ changelog_uri: https://github.com/spree/spree/releases/tag/v4.2.0.rc5
1112
1174
  documentation_uri: https://guides.spreecommerce.org/
1113
- source_code_uri: https://github.com/spree/spree/tree/v4.2.0.beta
1114
- post_install_message:
1175
+ source_code_uri: https://github.com/spree/spree/tree/v4.2.0.rc5
1176
+ post_install_message:
1115
1177
  rdoc_options: []
1116
1178
  require_paths:
1117
1179
  - lib
@@ -1126,8 +1188,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1126
1188
  - !ruby/object:Gem::Version
1127
1189
  version: 1.8.23
1128
1190
  requirements: []
1129
- rubygems_version: 3.1.2
1130
- signing_key:
1191
+ rubygems_version: 3.1.4
1192
+ signing_key:
1131
1193
  specification_version: 4
1132
1194
  summary: The bare bones necessary for Spree.
1133
1195
  test_files: []
@@ -1,15 +0,0 @@
1
- module Spree
2
- module Core
3
- module ControllerHelpers
4
- module CurrencyHelpers
5
- def self.included(receiver)
6
- receiver.send :helper_method, :supported_currencies
7
- end
8
-
9
- def supported_currencies
10
- current_store.supported_currencies_list
11
- end
12
- end
13
- end
14
- end
15
- end
@@ -1,17 +0,0 @@
1
- module Spree
2
- module ViewContext
3
- def self.context=(context)
4
- @context = context
5
- end
6
-
7
- def self.context
8
- @context
9
- end
10
-
11
- def view_context
12
- super.tap do |context|
13
- Spree::ViewContext.context = context
14
- end
15
- end
16
- end
17
- end
@@ -1 +0,0 @@
1
- Spree::BaseController.include Spree::ViewContext