spree_core 3.1.14 → 3.2.0.rc1

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.
Files changed (529) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/{spree.js.coffee.erb → spree.js.coffee} +2 -2
  3. data/app/helpers/spree/base_helper.rb +1 -1
  4. data/app/helpers/spree/products_helper.rb +0 -6
  5. data/app/mailers/spree/reimbursement_mailer.rb +6 -6
  6. data/app/models/concerns/spree/acts_as_taggable.rb +11 -0
  7. data/app/models/concerns/spree/adjustment_source.rb +1 -1
  8. data/app/models/concerns/spree/ransackable_attributes.rb +0 -5
  9. data/app/models/spree/address.rb +67 -38
  10. data/app/models/spree/app_configuration.rb +9 -6
  11. data/app/models/spree/base.rb +1 -1
  12. data/app/models/spree/calculator.rb +1 -1
  13. data/app/models/spree/country.rb +5 -4
  14. data/app/models/spree/credit_card.rb +3 -3
  15. data/app/models/spree/gateway/bogus.rb +11 -11
  16. data/app/models/spree/gateway/bogus_simple.rb +4 -4
  17. data/app/models/spree/gateway.rb +1 -1
  18. data/app/models/spree/image.rb +2 -2
  19. data/app/models/spree/inventory_unit.rb +6 -10
  20. data/app/models/spree/line_item.rb +17 -6
  21. data/app/models/spree/order/checkout.rb +2 -2
  22. data/app/models/spree/order.rb +12 -25
  23. data/app/models/spree/order_contents.rb +7 -6
  24. data/app/models/spree/order_inventory.rb +12 -1
  25. data/app/models/spree/order_updater.rb +1 -2
  26. data/app/models/spree/payment/processing.rb +3 -3
  27. data/app/models/spree/payment_method.rb +7 -1
  28. data/app/models/spree/preferences/store.rb +3 -3
  29. data/app/models/spree/product/scopes.rb +16 -20
  30. data/app/models/spree/product.rb +11 -3
  31. data/app/models/spree/promotion/actions/create_line_items.rb +21 -3
  32. data/app/models/spree/promotion/rules/country.rb +23 -0
  33. data/app/models/spree/promotion/rules/option_value.rb +13 -10
  34. data/app/models/spree/promotion/rules/taxon.rb +1 -1
  35. data/app/models/spree/promotion.rb +35 -1
  36. data/app/models/spree/promotion_handler/cart.rb +3 -17
  37. data/app/models/spree/promotion_handler/coupon.rb +22 -22
  38. data/app/models/spree/promotion_handler/page.rb +2 -2
  39. data/app/models/spree/refund.rb +1 -1
  40. data/app/models/spree/refund_reason.rb +1 -1
  41. data/app/models/spree/reimbursement_type.rb +5 -1
  42. data/app/models/spree/return_item.rb +1 -1
  43. data/app/models/spree/shipment.rb +4 -6
  44. data/app/models/spree/shipment_handler.rb +1 -1
  45. data/app/models/spree/stock/adjuster.rb +9 -2
  46. data/app/models/spree/stock/coordinator.rb +11 -4
  47. data/app/models/spree/stock/inventory_unit_builder.rb +1 -1
  48. data/app/models/spree/stock/package.rb +11 -3
  49. data/app/models/spree/stock/packer.rb +15 -5
  50. data/app/models/spree/stock/prioritizer.rb +25 -15
  51. data/app/models/spree/stock/splitter/shipping_category.rb +6 -1
  52. data/app/models/spree/stock_item.rb +2 -1
  53. data/app/models/spree/stock_movement.rb +11 -6
  54. data/app/models/spree/store.rb +1 -0
  55. data/app/models/spree/store_credit.rb +1 -1
  56. data/app/models/spree/tag.rb +4 -0
  57. data/app/models/spree/tax_rate.rb +6 -0
  58. data/app/models/spree/taxon.rb +3 -3
  59. data/app/models/spree/variant.rb +6 -3
  60. data/app/models/spree/zone.rb +2 -2
  61. data/app/views/spree/shared/_paths.html.erb +8 -0
  62. data/config/initializers/acts_as_taggable_on.rb +9 -0
  63. data/config/initializers/friendly_id.rb +0 -81
  64. data/config/locales/en.yml +11 -0
  65. data/db/default/spree/countries.rb +5 -1
  66. data/db/default/spree/roles.rb +2 -2
  67. data/db/default/spree/states.rb +1 -1
  68. data/db/migrate/20120831092320_spree_one_two.rb +101 -101
  69. data/db/migrate/20120831092359_spree_promo_one_two.rb +14 -14
  70. data/db/migrate/20120905145253_add_tax_rate_label.rb +1 -1
  71. data/db/migrate/20120905151823_add_toggle_tax_rate_display.rb +2 -2
  72. data/db/migrate/20120929093553_remove_unused_preference_columns.rb +4 -4
  73. data/db/migrate/20121009142519_add_lock_version_to_variant.rb +2 -2
  74. data/db/migrate/20121010142909_add_states_required_to_countries.rb +2 -2
  75. data/db/migrate/20121012071449_add_on_demand_to_product_and_variant.rb +3 -3
  76. data/db/migrate/20121017010007_remove_not_null_constraint_from_products_on_hand.rb +5 -5
  77. data/db/migrate/20121031162139_split_prices_from_variants.rb +10 -10
  78. data/db/migrate/20121107003422_remove_not_null_from_spree_prices_amount.rb +3 -3
  79. data/db/migrate/20121107184631_add_currency_to_line_items.rb +1 -1
  80. data/db/migrate/20121107194006_add_currency_to_orders.rb +1 -1
  81. data/db/migrate/20121109173623_add_cost_currency_to_variants.rb +2 -2
  82. data/db/migrate/20121111231553_remove_display_on_from_payment_methods.rb +1 -1
  83. data/db/migrate/20121124203911_add_position_to_taxonomies.rb +2 -2
  84. data/db/migrate/20121126040517_add_last_ip_to_spree_orders.rb +1 -1
  85. data/db/migrate/20121213162028_add_state_to_spree_adjustments.rb +1 -1
  86. data/db/migrate/20130114053446_add_display_on_to_spree_payment_methods.rb +1 -1
  87. data/db/migrate/20130120201805_add_position_to_product_properties.spree.rb +2 -2
  88. data/db/migrate/20130203232234_add_identifier_to_spree_payments.rb +1 -1
  89. data/db/migrate/20130207155350_add_order_id_index_to_payments.rb +1 -1
  90. data/db/migrate/20130208032954_add_primary_to_spree_products_taxons.rb +1 -1
  91. data/db/migrate/20130211190146_create_spree_stock_items.rb +2 -2
  92. data/db/migrate/20130211191120_create_spree_stock_locations.rb +1 -1
  93. data/db/migrate/20130213191427_create_default_stock.rb +1 -2
  94. data/db/migrate/20130222032153_add_order_id_index_to_shipments.rb +1 -1
  95. data/db/migrate/20130226032817_change_meta_description_on_spree_products_to_text.rb +2 -2
  96. data/db/migrate/20130226191231_add_stock_location_id_to_spree_shipments.rb +1 -1
  97. data/db/migrate/20130227143905_add_pending_to_inventory_unit.rb +3 -3
  98. data/db/migrate/20130228164411_remove_on_demand_from_product_and_variant.rb +1 -1
  99. data/db/migrate/20130228210442_create_shipping_method_zone.rb +3 -3
  100. data/db/migrate/20130301162745_remove_shipping_category_id_from_shipping_method.rb +1 -1
  101. data/db/migrate/20130301162924_create_shipping_method_categories.rb +3 -3
  102. data/db/migrate/20130301205200_add_tracking_url_to_spree_shipping_methods.rb +1 -1
  103. data/db/migrate/20130304162240_create_spree_shipping_rates.rb +5 -5
  104. data/db/migrate/20130304192936_remove_category_match_attributes_from_shipping_method.rb +1 -1
  105. data/db/migrate/20130305143310_create_stock_movements.rb +1 -1
  106. data/db/migrate/20130306181701_add_address_fields_to_stock_location.rb +3 -3
  107. data/db/migrate/20130306191917_add_active_field_to_stock_locations.rb +2 -2
  108. data/db/migrate/20130306195650_add_backorderable_to_stock_item.rb +2 -2
  109. data/db/migrate/20130307161754_add_default_quantity_to_stock_movement.rb +2 -2
  110. data/db/migrate/20130318151756_add_source_and_destination_to_stock_movements.rb +1 -1
  111. data/db/migrate/20130319062004_change_orders_total_precision.rb +5 -5
  112. data/db/migrate/20130319063911_change_spree_payments_amount_precision.rb +2 -2
  113. data/db/migrate/20130319064308_change_spree_return_authorization_amount_precision.rb +2 -2
  114. data/db/migrate/20130319082943_change_adjustments_amount_precision.rb +2 -2
  115. data/db/migrate/20130319183250_add_originator_to_stock_movement.rb +1 -1
  116. data/db/migrate/20130319190507_drop_source_and_destination_from_stock_movement.rb +3 -3
  117. data/db/migrate/20130325163316_migrate_inventory_unit_sold_to_on_hand.rb +3 -3
  118. data/db/migrate/20130326175857_add_stock_location_to_rma.rb +1 -1
  119. data/db/migrate/20130328130308_update_shipment_state_for_canceled_orders.rb +1 -1
  120. data/db/migrate/20130328195253_add_seo_metas_to_taxons.rb +1 -1
  121. data/db/migrate/20130329134939_remove_stock_item_and_variant_lock.rb +1 -1
  122. data/db/migrate/20130413230529_add_name_to_spree_credit_cards.rb +1 -1
  123. data/db/migrate/20130414000512_update_name_fields_on_spree_credit_cards.rb +2 -2
  124. data/db/migrate/20130417120034_add_index_to_source_columns_on_adjustments.rb +1 -1
  125. data/db/migrate/20130417120035_update_adjustment_states.rb +3 -3
  126. data/db/migrate/20130417123427_add_shipping_rates_to_shipments.rb +4 -4
  127. data/db/migrate/20130418125341_create_spree_stock_transfers.rb +1 -1
  128. data/db/migrate/20130423110707_drop_products_count_on_hand.rb +1 -1
  129. data/db/migrate/20130423223847_set_default_shipping_rate_cost.rb +1 -1
  130. data/db/migrate/20130509115210_add_number_to_stock_transfer.rb +1 -1
  131. data/db/migrate/20130514151929_add_sku_index_to_spree_variants.rb +1 -1
  132. data/db/migrate/20130515180736_add_backorderable_default_to_spree_stock_location.rb +1 -1
  133. data/db/migrate/20130516151222_add_propage_all_variants_to_spree_stock_location.rb +1 -1
  134. data/db/migrate/20130611054351_rename_shipping_methods_zones_to_spree_shipping_methods_zones.rb +1 -1
  135. data/db/migrate/20130611185927_add_user_id_index_to_spree_orders.rb +1 -1
  136. data/db/migrate/20130618041418_add_updated_at_to_spree_countries.rb +1 -1
  137. data/db/migrate/20130619012236_add_updated_at_to_spree_states.rb +1 -1
  138. data/db/migrate/20130626232741_add_cvv_result_code_and_cvv_result_message_to_spree_payments.rb +1 -1
  139. data/db/migrate/20130628021056_add_unique_index_to_permalink_on_spree_products.rb +2 -2
  140. data/db/migrate/20130628022817_add_unique_index_to_orders_shipments_and_stock_transfers.rb +4 -4
  141. data/db/migrate/20130708052307_add_deleted_at_to_spree_tax_rates.rb +1 -1
  142. data/db/migrate/20130711200933_remove_lock_version_from_inventory_units.rb +1 -1
  143. data/db/migrate/20130718042445_add_cost_price_to_line_item.rb +2 -2
  144. data/db/migrate/20130718233855_set_backorderable_to_default_to_false.rb +3 -3
  145. data/db/migrate/20130725031716_add_created_by_id_to_spree_orders.rb +1 -1
  146. data/db/migrate/20130729214043_index_completed_at_on_spree_orders.rb +1 -1
  147. data/db/migrate/20130802014537_add_tax_category_id_to_spree_line_items.rb +1 -1
  148. data/db/migrate/20130802022321_migrate_tax_categories_to_line_items.rb +1 -1
  149. data/db/migrate/20130806022521_drop_spree_mail_methods.rb +1 -1
  150. data/db/migrate/20130806145853_set_default_stock_location_on_shipments.rb +1 -1
  151. data/db/migrate/20130807024301_upgrade_adjustments.rb +4 -4
  152. data/db/migrate/20130807024302_rename_adjustment_fields.rb +1 -1
  153. data/db/migrate/20130809164245_add_admin_name_column_to_spree_shipping_methods.rb +1 -1
  154. data/db/migrate/20130809164330_add_admin_name_column_to_spree_stock_locations.rb +1 -1
  155. data/db/migrate/20130813004002_add_shipment_total_to_spree_orders.rb +2 -2
  156. data/db/migrate/20130813140619_expand_order_number_size.rb +3 -3
  157. data/db/migrate/20130813232134_rename_activators_to_promotions.rb +1 -1
  158. data/db/migrate/20130815000406_add_adjustment_total_to_line_items.rb +2 -2
  159. data/db/migrate/20130815024413_add_adjustment_total_to_shipments.rb +2 -2
  160. data/db/migrate/20130826062534_add_depth_to_spree_taxons.rb +1 -1
  161. data/db/migrate/20130828234942_add_tax_total_to_line_items_shipments_and_orders.rb +2 -2
  162. data/db/migrate/20130830001033_add_shipping_category_to_shipping_methods_and_products.rb +2 -2
  163. data/db/migrate/20130830001159_migrate_old_shipping_calculators.rb +1 -1
  164. data/db/migrate/20130903183026_add_code_to_spree_promotion_rules.rb +1 -1
  165. data/db/migrate/20130909115621_change_states_required_for_countries.rb +1 -1
  166. data/db/migrate/20130915032339_add_deleted_at_to_spree_stock_items.rb +1 -1
  167. data/db/migrate/20130917024658_remove_promotions_event_name_field.rb +1 -1
  168. data/db/migrate/20130924040529_add_promo_total_to_line_items_and_shipments_and_orders.rb +1 -1
  169. data/db/migrate/20131001013410_remove_unused_credit_card_fields.rb +2 -2
  170. data/db/migrate/20131026154747_add_track_inventory_to_variant.rb +2 -2
  171. data/db/migrate/20131107132123_add_tax_category_to_variants.rb +1 -1
  172. data/db/migrate/20131113035136_add_channel_to_spree_orders.rb +1 -1
  173. data/db/migrate/20131118043959_add_included_to_adjustments.rb +2 -2
  174. data/db/migrate/20131118050234_rename_tax_total_fields.rb +1 -1
  175. data/db/migrate/20131118183431_add_line_item_id_to_spree_inventory_units.rb +1 -1
  176. data/db/migrate/20131120234456_add_updated_at_to_variants.rb +1 -1
  177. data/db/migrate/20131127001002_add_position_to_classifications.rb +1 -1
  178. data/db/migrate/20131211112807_create_spree_orders_promotions.rb +2 -2
  179. data/db/migrate/20131211192741_unique_shipping_method_categories.rb +1 -1
  180. data/db/migrate/20131218054603_add_item_count_to_spree_orders.rb +2 -2
  181. data/db/migrate/20140106065820_remove_value_type_from_spree_preferences.rb +1 -1
  182. data/db/migrate/20140106224208_rename_permalink_to_slug_for_products.rb +1 -1
  183. data/db/migrate/20140120160805_add_index_to_variant_id_and_currency_on_prices.rb +1 -1
  184. data/db/migrate/20140124023232_rename_activator_id_in_rules_and_actions_to_promotion_id.rb +1 -1
  185. data/db/migrate/20140129024326_add_deleted_at_to_spree_prices.rb +1 -1
  186. data/db/migrate/20140203161722_add_approver_id_and_approved_at_to_orders.rb +1 -1
  187. data/db/migrate/20140204115338_add_confirmation_delivered_to_spree_orders.rb +1 -1
  188. data/db/migrate/20140204192230_add_auto_capture_to_payment_methods.rb +1 -1
  189. data/db/migrate/20140205120320_create_spree_payment_capture_events.rb +1 -1
  190. data/db/migrate/20140205144710_add_uncaptured_amount_to_payments.rb +1 -1
  191. data/db/migrate/20140205181631_default_variant_weight_to_zero.rb +1 -1
  192. data/db/migrate/20140207085910_add_tax_category_id_to_shipping_methods.rb +1 -1
  193. data/db/migrate/20140207093021_add_tax_rate_id_to_shipping_rates.rb +1 -1
  194. data/db/migrate/20140211040159_add_pre_tax_amount_to_line_items_and_shipments.rb +1 -1
  195. data/db/migrate/20140213184916_add_more_indexes.rb +1 -1
  196. data/db/migrate/20140219060952_add_considered_risky_to_orders.rb +2 -2
  197. data/db/migrate/20140227112348_add_preference_store_to_everything.rb +1 -1
  198. data/db/migrate/20140307235515_add_user_id_to_spree_credit_cards.rb +1 -1
  199. data/db/migrate/20140309023735_migrate_old_preferences.rb +1 -1
  200. data/db/migrate/20140309024355_create_spree_stores.rb +2 -2
  201. data/db/migrate/20140309033438_create_store_from_preferences.rb +2 -2
  202. data/db/migrate/20140315053743_add_timestamps_to_spree_assets.rb +1 -1
  203. data/db/migrate/20140318191500_create_spree_taxons_promotion_rules.rb +1 -1
  204. data/db/migrate/20140331100557_add_additional_store_fields.rb +1 -1
  205. data/db/migrate/20140410141842_add_many_missing_indexes.rb +1 -1
  206. data/db/migrate/20140410150358_correct_some_polymorphic_index_and_add_more_missing.rb +1 -1
  207. data/db/migrate/20140415041315_add_user_id_created_by_id_index_to_order.rb +1 -1
  208. data/db/migrate/20140508151342_change_spree_price_amount_precision.rb +5 -5
  209. data/db/migrate/20140518174634_add_token_to_spree_orders.rb +1 -1
  210. data/db/migrate/20140530024945_move_order_token_from_tokenized_permission.rb +2 -2
  211. data/db/migrate/20140601011216_set_shipment_total_for_users_upgrading.rb +1 -1
  212. data/db/migrate/20140604135309_drop_credit_card_first_name_and_last_name.rb +1 -1
  213. data/db/migrate/20140609201656_add_deleted_at_to_spree_promotion_actions.rb +1 -1
  214. data/db/migrate/20140616202624_remove_uncaptured_amount_from_spree_payments.rb +1 -1
  215. data/db/migrate/20140625214618_create_spree_refunds.rb +1 -1
  216. data/db/migrate/20140702140656_create_spree_return_authorization_inventory_unit.rb +1 -1
  217. data/db/migrate/20140707125621_rename_return_authorization_inventory_unit_to_return_items.rb +1 -1
  218. data/db/migrate/20140709160534_backfill_line_item_pre_tax_amount.rb +1 -1
  219. data/db/migrate/20140710041921_recreate_spree_return_authorizations.rb +2 -2
  220. data/db/migrate/20140710181204_add_amount_fields_to_return_items.rb +1 -1
  221. data/db/migrate/20140710190048_drop_return_authorization_amount.rb +1 -1
  222. data/db/migrate/20140713140455_create_spree_return_authorization_reasons.rb +1 -1
  223. data/db/migrate/20140713140527_create_spree_refund_reasons.rb +1 -1
  224. data/db/migrate/20140713142214_rename_return_authorization_reason.rb +1 -1
  225. data/db/migrate/20140715182625_create_spree_promotion_categories.rb +1 -1
  226. data/db/migrate/20140716204111_drop_received_at_on_return_items.rb +1 -1
  227. data/db/migrate/20140716212330_add_reception_and_acceptance_status_to_return_items.rb +1 -1
  228. data/db/migrate/20140717155155_create_default_refund_reason.rb +1 -1
  229. data/db/migrate/20140717185932_add_default_to_spree_stock_locations.rb +1 -1
  230. data/db/migrate/20140718133010_create_spree_customer_returns.rb +1 -1
  231. data/db/migrate/20140718133349_add_customer_return_id_to_return_item.rb +1 -1
  232. data/db/migrate/20140718195325_create_friendly_id_slugs.rb +5 -5
  233. data/db/migrate/20140723004419_rename_spree_refund_return_authorization_id.rb +1 -1
  234. data/db/migrate/20140723152808_increase_return_item_pre_tax_amount_precision.rb +1 -1
  235. data/db/migrate/20140723214541_copy_product_slugs_to_slug_history.rb +2 -2
  236. data/db/migrate/20140725131539_create_spree_reimbursements.rb +1 -1
  237. data/db/migrate/20140728225422_add_promotionable_to_spree_products.rb +1 -1
  238. data/db/migrate/20140729133613_add_exchange_inventory_unit_foreign_keys.rb +1 -1
  239. data/db/migrate/20140730155938_add_acceptance_status_errors_to_return_item.rb +1 -1
  240. data/db/migrate/20140731150017_create_spree_reimbursement_types.rb +1 -1
  241. data/db/migrate/20140804185157_add_default_to_shipment_cost.rb +1 -1
  242. data/db/migrate/20140805171035_add_default_to_spree_credit_cards.rb +1 -1
  243. data/db/migrate/20140805171219_make_existing_credit_cards_default.rb +1 -1
  244. data/db/migrate/20140806144901_add_type_to_reimbursement_type.rb +1 -1
  245. data/db/migrate/20140808184039_create_spree_reimbursement_credits.rb +1 -1
  246. data/db/migrate/20140827170513_add_meta_title_to_spree_products.rb +1 -1
  247. data/db/migrate/20140911173301_add_kind_to_zone.rb +1 -1
  248. data/db/migrate/20140924164824_add_code_to_spree_tax_categories.rb +1 -1
  249. data/db/migrate/20140927193717_default_pre_tax_amount_should_be_zero.rb +1 -1
  250. data/db/migrate/20141002191113_add_code_to_spree_shipping_methods.rb +1 -1
  251. data/db/migrate/20141007230328_add_cancel_audit_fields_to_spree_orders.rb +1 -1
  252. data/db/migrate/20141009204607_add_store_id_to_orders.rb +1 -1
  253. data/db/migrate/20141012083513_create_spree_taxons_prototypes.rb +1 -1
  254. data/db/migrate/20141021194502_add_state_lock_version_to_order.rb +1 -1
  255. data/db/migrate/20141023005240_add_counter_cache_from_spree_variants_to_spree_stock_items.rb +2 -7
  256. data/db/migrate/20141101231208_fix_adjustment_order_presence.rb +1 -1
  257. data/db/migrate/20141105213646_update_classifications_positions.rb +1 -1
  258. data/db/migrate/20141120135441_add_guest_token_index_to_spree_orders.rb +1 -1
  259. data/db/migrate/20141215232040_remove_token_permissions_table.rb +1 -1
  260. data/db/migrate/20141215235502_remove_extra_products_slug_index.rb +1 -1
  261. data/db/migrate/20141217215630_update_product_slug_index.rb +1 -1
  262. data/db/migrate/20141218025915_rename_identifier_to_number_for_payment.rb +1 -1
  263. data/db/migrate/20150118210639_create_spree_store_credits.rb +1 -1
  264. data/db/migrate/20150118211500_create_spree_store_credit_categories.rb +1 -1
  265. data/db/migrate/20150118212051_create_spree_store_credit_events.rb +1 -1
  266. data/db/migrate/20150118212101_create_spree_store_credit_types.rb +1 -1
  267. data/db/migrate/20150121022521_remove_environment_from_payment_method.rb +1 -1
  268. data/db/migrate/20150122145607_add_resellable_to_return_items.rb +1 -1
  269. data/db/migrate/20150122202432_add_code_to_spree_promotion_categories.rb +1 -1
  270. data/db/migrate/20150128032538_remove_environment_from_tracker.rb +1 -1
  271. data/db/migrate/20150128060325_remove_spree_configurations.rb +1 -1
  272. data/db/migrate/20150216173445_add_index_to_spree_stock_items_variant_id.rb +1 -1
  273. data/db/migrate/20150309161154_ensure_payments_have_numbers.rb +1 -1
  274. data/db/migrate/20150314013438_add_missing_indexes_on_spree_tables.rb +1 -1
  275. data/db/migrate/20150317174308_remove_duplicated_indexes_from_multi_columns.rb +1 -1
  276. data/db/migrate/20150324104002_remove_user_index_from_spree_state_changes.rb +1 -1
  277. data/db/migrate/20150515211137_fix_adjustment_order_id.rb +1 -1
  278. data/db/migrate/20150522071831_add_position_to_spree_payment_methods.rb +1 -1
  279. data/db/migrate/20150522181728_add_deleted_at_to_friendly_id_slugs.rb +1 -1
  280. data/db/migrate/20150609093816_increase_scale_on_pre_tax_amounts.rb +1 -1
  281. data/db/migrate/20150626181949_add_taxable_adjustment_total_to_line_item.rb +1 -1
  282. data/db/migrate/20150627090949_migrate_payment_methods_display.rb +1 -1
  283. data/db/migrate/20150707204155_enable_acts_as_paranoid_on_calculators.rb +1 -1
  284. data/db/migrate/20150714154102_spree_payment_method_store_credits.rb +1 -1
  285. data/db/migrate/20150726141425_rename_has_and_belongs_to_associations_to_model_names.rb +1 -1
  286. data/db/migrate/20150727191614_spree_store_credit_types.rb +1 -1
  287. data/db/migrate/20150819154308_add_discontinued_to_products_and_variants.rb +1 -1
  288. data/db/migrate/20151220072838_remove_shipping_method_id_from_spree_orders.rb +1 -1
  289. data/db/migrate/20160207191757_add_id_column_to_earlier_habtm_tables.rb +1 -1
  290. data/db/migrate/20160219165458_add_indexes.rb +1 -1
  291. data/db/migrate/20160509064646_remove_counter_cache_from_spree_variants_to_spree_stock_items.rb +10 -0
  292. data/db/migrate/20160511071954_acts_as_taggable_on_spree_migration.rb +40 -0
  293. data/db/migrate/20160511072249_change_collation_for_spree_tag_names.rb +9 -0
  294. data/db/migrate/20160511072335_add_missing_indexes_to_spree_taggings.rb +14 -0
  295. data/db/migrate/20160608090604_add_zipcode_required_to_spree_countries.rb +7 -0
  296. data/db/migrate/20161014145148_add_created_at_to_variant.rb +8 -0
  297. data/db/migrate/20161014152814_add_null_false_to_spree_variants_timestamps.rb +6 -0
  298. data/lib/generators/spree/custom_user/custom_user_generator.rb +1 -1
  299. data/lib/generators/spree/custom_user/templates/authentication_helpers.rb.tt +3 -3
  300. data/lib/generators/spree/custom_user/templates/migration.rb.tt +2 -2
  301. data/lib/generators/spree/dummy/dummy_generator.rb +11 -11
  302. data/lib/generators/spree/dummy/templates/rails/application.rb +1 -1
  303. data/lib/generators/spree/dummy/templates/rails/database.yml +9 -6
  304. data/lib/generators/spree/dummy/templates/rails/test.rb +2 -2
  305. data/lib/generators/spree/install/install_generator.rb +37 -13
  306. data/lib/spree/core/controller_helpers/common.rb +3 -3
  307. data/lib/spree/core/controller_helpers/order.rb +2 -5
  308. data/lib/spree/core/controller_helpers/respond_with.rb +1 -1
  309. data/lib/spree/core/delegate_belongs_to.rb +2 -2
  310. data/lib/spree/core/engine.rb +5 -4
  311. data/lib/spree/core/importer/product.rb +2 -2
  312. data/lib/spree/core/product_duplicator.rb +1 -1
  313. data/lib/spree/core/product_filters.rb +1 -1
  314. data/lib/spree/core/search/base.rb +1 -1
  315. data/lib/spree/core/version.rb +1 -1
  316. data/lib/spree/i18n/initializer.rb +1 -1
  317. data/lib/spree/money.rb +1 -15
  318. data/lib/spree/permitted_attributes.rb +1 -1
  319. data/lib/spree/testing_support/caching.rb +3 -3
  320. data/lib/spree/testing_support/common_rake.rb +0 -2
  321. data/lib/spree/testing_support/controller_requests.rb +4 -4
  322. data/lib/spree/testing_support/factories/line_item_factory.rb +0 -1
  323. data/lib/spree/testing_support/factories/order_factory.rb +1 -0
  324. data/lib/spree/testing_support/factories/tag_factory.rb +5 -0
  325. data/lib/spree/testing_support/kernel.rb +18 -0
  326. data/lib/spree/testing_support/order_walkthrough.rb +4 -4
  327. data/lib/tasks/core.rake +2 -2
  328. data/spec/helpers/base_helper_spec.rb +200 -0
  329. data/spec/helpers/products_helper_spec.rb +289 -0
  330. data/spec/lib/calculated_adjustments_spec.rb +7 -0
  331. data/spec/lib/i18n_spec.rb +123 -0
  332. data/spec/lib/search/base_spec.rb +86 -0
  333. data/spec/lib/spree/core/controller_helpers/auth_spec.rb +103 -0
  334. data/spec/lib/spree/core/controller_helpers/order_spec.rb +110 -0
  335. data/spec/lib/spree/core/controller_helpers/search_spec.rb +17 -0
  336. data/spec/lib/spree/core/controller_helpers/store_spec.rb +72 -0
  337. data/spec/lib/spree/core/controller_helpers/strong_parameters_spec.rb +39 -0
  338. data/spec/lib/spree/core/delegate_belongs_to_spec.rb +22 -0
  339. data/spec/lib/spree/core/importer/order_spec.rb +605 -0
  340. data/spec/lib/spree/core/number_generator_spec.rb +175 -0
  341. data/spec/lib/spree/core/token_generator_spec.rb +24 -0
  342. data/spec/lib/spree/core/validators/email_spec.rb +53 -0
  343. data/spec/lib/spree/core_spec.rb +23 -0
  344. data/spec/lib/spree/localized_number_spec.rb +48 -0
  345. data/spec/lib/spree/migrations_spec.rb +36 -0
  346. data/spec/lib/spree/money_spec.rb +122 -0
  347. data/spec/lib/tasks/exchanges_spec.rb +136 -0
  348. data/spec/mailers/order_mailer_spec.rb +122 -0
  349. data/spec/mailers/reimbursement_mailer_spec.rb +47 -0
  350. data/spec/mailers/shipment_mailer_spec.rb +81 -0
  351. data/spec/mailers/test_mailer_spec.rb +38 -0
  352. data/spec/models/option_type_prototype_spec.rb +9 -0
  353. data/spec/models/spree/ability_spec.rb +251 -0
  354. data/spec/models/spree/address_spec.rb +402 -0
  355. data/spec/models/spree/adjustable/adjuster/base_spec.rb +10 -0
  356. data/spec/models/spree/adjustable/adjuster/promotion_spec.rb +211 -0
  357. data/spec/models/spree/adjustable/adjuster/tax_spec.rb +86 -0
  358. data/spec/models/spree/adjustable/adjustments_updater_spec.rb +26 -0
  359. data/spec/models/spree/adjustment_spec.rb +189 -0
  360. data/spec/models/spree/app_configuration_spec.rb +26 -0
  361. data/spec/models/spree/asset_spec.rb +28 -0
  362. data/spec/models/spree/calculator/default_tax_spec.rb +152 -0
  363. data/spec/models/spree/calculator/flat_percent_item_total_spec.rb +25 -0
  364. data/spec/models/spree/calculator/flat_rate_spec.rb +47 -0
  365. data/spec/models/spree/calculator/flexi_rate_spec.rb +41 -0
  366. data/spec/models/spree/calculator/percent_on_line_item_spec.rb +15 -0
  367. data/spec/models/spree/calculator/price_sack_spec.rb +30 -0
  368. data/spec/models/spree/calculator/refunds/default_refund_amount_spec.rb +47 -0
  369. data/spec/models/spree/calculator/shipping/flat_percent_item_total_spec.rb +23 -0
  370. data/spec/models/spree/calculator/shipping/flat_rate_spec.rb +13 -0
  371. data/spec/models/spree/calculator/shipping/flexi_rate_spec.rb +52 -0
  372. data/spec/models/spree/calculator/shipping/per_item_spec.rb +20 -0
  373. data/spec/models/spree/calculator/shipping/price_sack_spec.rb +29 -0
  374. data/spec/models/spree/calculator/shipping.rb +8 -0
  375. data/spec/models/spree/calculator/tiered_flat_rate_spec.rb +40 -0
  376. data/spec/models/spree/calculator/tiered_percent_spec.rb +51 -0
  377. data/spec/models/spree/calculator_spec.rb +69 -0
  378. data/spec/models/spree/classification_spec.rb +93 -0
  379. data/spec/models/spree/concerns/display_money_spec.rb +43 -0
  380. data/spec/models/spree/concerns/user_methods_spec.rb +82 -0
  381. data/spec/models/spree/concerns/vat_price_calculation_spec.rb +66 -0
  382. data/spec/models/spree/country_spec.rb +55 -0
  383. data/spec/models/spree/credit_card_spec.rb +328 -0
  384. data/spec/models/spree/customer_return_spec.rb +240 -0
  385. data/spec/models/spree/exchange_spec.rb +75 -0
  386. data/spec/models/spree/gateway/bogus_simple.rb +20 -0
  387. data/spec/models/spree/gateway/bogus_spec.rb +13 -0
  388. data/spec/models/spree/gateway_spec.rb +61 -0
  389. data/spec/models/spree/image_spec.rb +8 -0
  390. data/spec/models/spree/inventory_unit_spec.rb +256 -0
  391. data/spec/models/spree/line_item_spec.rb +346 -0
  392. data/spec/models/spree/option_type_spec.rb +14 -0
  393. data/spec/models/spree/option_value_spec.rb +18 -0
  394. data/spec/models/spree/order/address_spec.rb +50 -0
  395. data/spec/models/spree/order/adjustments_spec.rb +29 -0
  396. data/spec/models/spree/order/callbacks_spec.rb +42 -0
  397. data/spec/models/spree/order/checkout_spec.rb +770 -0
  398. data/spec/models/spree/order/currency_updater_spec.rb +32 -0
  399. data/spec/models/spree/order/finalizing_spec.rb +114 -0
  400. data/spec/models/spree/order/helpers_spec.rb +5 -0
  401. data/spec/models/spree/order/payment_spec.rb +214 -0
  402. data/spec/models/spree/order/risk_assessment_spec.rb +84 -0
  403. data/spec/models/spree/order/shipments_spec.rb +43 -0
  404. data/spec/models/spree/order/state_machine_spec.rb +212 -0
  405. data/spec/models/spree/order/store_credit_spec.rb +426 -0
  406. data/spec/models/spree/order/tax_spec.rb +84 -0
  407. data/spec/models/spree/order/totals_spec.rb +24 -0
  408. data/spec/models/spree/order/updating_spec.rb +18 -0
  409. data/spec/models/spree/order/validations_spec.rb +15 -0
  410. data/spec/models/spree/order_contents_spec.rb +297 -0
  411. data/spec/models/spree/order_inventory_spec.rb +239 -0
  412. data/spec/models/spree/order_merger_spec.rb +135 -0
  413. data/spec/models/spree/order_spec.rb +1046 -0
  414. data/spec/models/spree/order_updater_spec.rb +294 -0
  415. data/spec/models/spree/payment/gateway_options_spec.rb +127 -0
  416. data/spec/models/spree/payment/store_credit_spec.rb +60 -0
  417. data/spec/models/spree/payment_method/store_credit_spec.rb +291 -0
  418. data/spec/models/spree/payment_method_spec.rb +103 -0
  419. data/spec/models/spree/payment_spec.rb +919 -0
  420. data/spec/models/spree/preference_spec.rb +80 -0
  421. data/spec/models/spree/preferences/configuration_spec.rb +30 -0
  422. data/spec/models/spree/preferences/preferable_spec.rb +344 -0
  423. data/spec/models/spree/preferences/scoped_store_spec.rb +58 -0
  424. data/spec/models/spree/preferences/store_spec.rb +46 -0
  425. data/spec/models/spree/price_spec.rb +128 -0
  426. data/spec/models/spree/product/scopes_spec.rb +183 -0
  427. data/spec/models/spree/product_duplicator_spec.rb +103 -0
  428. data/spec/models/spree/product_filter_spec.rb +26 -0
  429. data/spec/models/spree/product_option_type_spec.rb +9 -0
  430. data/spec/models/spree/product_promotion_rule_spec.rb +9 -0
  431. data/spec/models/spree/product_property_spec.rb +22 -0
  432. data/spec/models/spree/product_spec.rb +619 -0
  433. data/spec/models/spree/promotion/actions/create_adjustment_spec.rb +50 -0
  434. data/spec/models/spree/promotion/actions/create_item_adjustments_spec.rb +148 -0
  435. data/spec/models/spree/promotion/actions/create_line_items_spec.rb +86 -0
  436. data/spec/models/spree/promotion/actions/free_shipping_spec.rb +36 -0
  437. data/spec/models/spree/promotion/rules/country_spec.rb +36 -0
  438. data/spec/models/spree/promotion/rules/first_order_spec.rb +75 -0
  439. data/spec/models/spree/promotion/rules/item_total_spec.rb +282 -0
  440. data/spec/models/spree/promotion/rules/one_use_per_user_spec.rb +42 -0
  441. data/spec/models/spree/promotion/rules/option_value_spec.rb +90 -0
  442. data/spec/models/spree/promotion/rules/product_spec.rb +143 -0
  443. data/spec/models/spree/promotion/rules/taxon_spec.rb +102 -0
  444. data/spec/models/spree/promotion/rules/user_logged_in_spec.rb +27 -0
  445. data/spec/models/spree/promotion/rules/user_spec.rb +45 -0
  446. data/spec/models/spree/promotion_action_spec.rb +10 -0
  447. data/spec/models/spree/promotion_category_spec.rb +17 -0
  448. data/spec/models/spree/promotion_handler/cart_spec.rb +102 -0
  449. data/spec/models/spree/promotion_handler/coupon_spec.rb +323 -0
  450. data/spec/models/spree/promotion_handler/free_shipping_spec.rb +48 -0
  451. data/spec/models/spree/promotion_handler/page_spec.rb +44 -0
  452. data/spec/models/spree/promotion_rule_spec.rb +29 -0
  453. data/spec/models/spree/promotion_rule_taxon_spec.rb +9 -0
  454. data/spec/models/spree/promotion_rule_user_spec.rb +9 -0
  455. data/spec/models/spree/promotion_spec.rb +679 -0
  456. data/spec/models/spree/property_prototype_spec.rb +9 -0
  457. data/spec/models/spree/property_spec.rb +5 -0
  458. data/spec/models/spree/prototype_spec.rb +5 -0
  459. data/spec/models/spree/prototype_taxon_spec.rb +9 -0
  460. data/spec/models/spree/refund_reason_spec.rb +20 -0
  461. data/spec/models/spree/refund_spec.rb +195 -0
  462. data/spec/models/spree/reimbursement/credit_spec.rb +36 -0
  463. data/spec/models/spree/reimbursement/reimbursement_type_engine_spec.rb +140 -0
  464. data/spec/models/spree/reimbursement/reimbursement_type_validator_spec.rb +83 -0
  465. data/spec/models/spree/reimbursement_performer_spec.rb +30 -0
  466. data/spec/models/spree/reimbursement_spec.rb +188 -0
  467. data/spec/models/spree/reimbursement_tax_calculator_spec.rb +63 -0
  468. data/spec/models/spree/reimbursement_type/credit_spec.rb +53 -0
  469. data/spec/models/spree/reimbursement_type/exchange_spec.rb +46 -0
  470. data/spec/models/spree/reimbursement_type/original_payment_spec.rb +55 -0
  471. data/spec/models/spree/reimbursement_type/store_credit_spec.rb +101 -0
  472. data/spec/models/spree/return_authorization_reason_spec.rb +7 -0
  473. data/spec/models/spree/return_authorization_spec.rb +230 -0
  474. data/spec/models/spree/return_item/eligibility_validator/default_spec.rb +77 -0
  475. data/spec/models/spree/return_item/eligibility_validator/inventory_shipped_spec.rb +58 -0
  476. data/spec/models/spree/return_item/eligibility_validator/no_reimbursements_spec.rb +61 -0
  477. data/spec/models/spree/return_item/eligibility_validator/order_completed_spec.rb +32 -0
  478. data/spec/models/spree/return_item/eligibility_validator/rma_required_spec.rb +29 -0
  479. data/spec/models/spree/return_item/eligibility_validator/time_since_purchase_spec.rb +35 -0
  480. data/spec/models/spree/return_item/exchange_variant_eligibility/same_option_value_spec.rb +65 -0
  481. data/spec/models/spree/return_item/exchange_variant_eligibility/same_product_spec.rb +43 -0
  482. data/spec/models/spree/return_item_spec.rb +731 -0
  483. data/spec/models/spree/returns_calculator_spec.rb +14 -0
  484. data/spec/models/spree/role_spec.rb +7 -0
  485. data/spec/models/spree/shipment_spec.rb +742 -0
  486. data/spec/models/spree/shipping_calculator_spec.rb +45 -0
  487. data/spec/models/spree/shipping_category_spec.rb +19 -0
  488. data/spec/models/spree/shipping_method_spec.rb +95 -0
  489. data/spec/models/spree/shipping_rate_spec.rb +140 -0
  490. data/spec/models/spree/state_spec.rb +29 -0
  491. data/spec/models/spree/stock/availability_validator_spec.rb +36 -0
  492. data/spec/models/spree/stock/content_item_spec.rb +31 -0
  493. data/spec/models/spree/stock/coordinator_spec.rb +61 -0
  494. data/spec/models/spree/stock/differentiator_spec.rb +39 -0
  495. data/spec/models/spree/stock/estimator_spec.rb +202 -0
  496. data/spec/models/spree/stock/inventory_unit_builder_spec.rb +38 -0
  497. data/spec/models/spree/stock/package_spec.rb +182 -0
  498. data/spec/models/spree/stock/packer_spec.rb +70 -0
  499. data/spec/models/spree/stock/prioritizer_spec.rb +125 -0
  500. data/spec/models/spree/stock/quantifier_spec.rb +126 -0
  501. data/spec/models/spree/stock/splitter/backordered_spec.rb +29 -0
  502. data/spec/models/spree/stock/splitter/base_spec.rb +21 -0
  503. data/spec/models/spree/stock/splitter/shipping_category_spec.rb +47 -0
  504. data/spec/models/spree/stock/splitter/weight_spec.rb +32 -0
  505. data/spec/models/spree/stock_item_spec.rb +432 -0
  506. data/spec/models/spree/stock_location_spec.rb +243 -0
  507. data/spec/models/spree/stock_movement_spec.rb +120 -0
  508. data/spec/models/spree/stock_transfer_spec.rb +50 -0
  509. data/spec/models/spree/store_credit_event_spec.rb +101 -0
  510. data/spec/models/spree/store_credit_spec.rb +786 -0
  511. data/spec/models/spree/store_spec.rb +78 -0
  512. data/spec/models/spree/tax_category_spec.rb +32 -0
  513. data/spec/models/spree/tax_rate_spec.rb +561 -0
  514. data/spec/models/spree/taxon_spec.rb +85 -0
  515. data/spec/models/spree/taxonomy_spec.rb +18 -0
  516. data/spec/models/spree/tracker_spec.rb +21 -0
  517. data/spec/models/spree/user_spec.rb +203 -0
  518. data/spec/models/spree/variant_spec.rb +809 -0
  519. data/spec/models/spree/zone_member_spec.rb +38 -0
  520. data/spec/models/spree/zone_spec.rb +472 -0
  521. data/spec/spec_helper.rb +79 -0
  522. data/spec/support/big_decimal.rb +5 -0
  523. data/spec/support/concerns/adjustment_source.rb +23 -0
  524. data/spec/support/concerns/default_price.rb +37 -0
  525. data/spec/support/rake.rb +13 -0
  526. data/spec/support/test_gateway.rb +2 -0
  527. data/spree_core.gemspec +12 -12
  528. metadata +249 -43
  529. data/config/initializers/premailer_rails.rb +0 -3
@@ -1,4 +1,4 @@
1
- class AddTaxCategoryIdToShippingMethods < ActiveRecord::Migration
1
+ class AddTaxCategoryIdToShippingMethods < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_shipping_methods, :tax_category_id, :integer
4
4
  end
@@ -1,4 +1,4 @@
1
- class AddTaxRateIdToShippingRates < ActiveRecord::Migration
1
+ class AddTaxRateIdToShippingRates < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_shipping_rates, :tax_rate_id, :integer
4
4
  end
@@ -1,4 +1,4 @@
1
- class AddPreTaxAmountToLineItemsAndShipments < ActiveRecord::Migration
1
+ class AddPreTaxAmountToLineItemsAndShipments < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_line_items, :pre_tax_amount, :decimal, precision: 8, scale: 2
4
4
  add_column :spree_shipments, :pre_tax_amount, :decimal, precision: 8, scale: 2
@@ -1,4 +1,4 @@
1
- class AddMoreIndexes < ActiveRecord::Migration
1
+ class AddMoreIndexes < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_index :spree_payment_methods, [:id, :type]
4
4
  add_index :spree_calculators, [:id, :type]
@@ -1,5 +1,5 @@
1
- class AddConsideredRiskyToOrders < ActiveRecord::Migration
1
+ class AddConsideredRiskyToOrders < ActiveRecord::Migration[4.2]
2
2
  def change
3
- add_column :spree_orders, :considered_risky, :boolean, :default => false
3
+ add_column :spree_orders, :considered_risky, :boolean, default: false
4
4
  end
5
5
  end
@@ -1,4 +1,4 @@
1
- class AddPreferenceStoreToEverything < ActiveRecord::Migration
1
+ class AddPreferenceStoreToEverything < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_calculators, :preferences, :text
4
4
  add_column :spree_gateways, :preferences, :text
@@ -1,4 +1,4 @@
1
- class AddUserIdToSpreeCreditCards < ActiveRecord::Migration
1
+ class AddUserIdToSpreeCreditCards < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  unless Spree::CreditCard.column_names.include? "user_id"
4
4
  add_column :spree_credit_cards, :user_id, :integer
@@ -1,4 +1,4 @@
1
- class MigrateOldPreferences < ActiveRecord::Migration
1
+ class MigrateOldPreferences < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  migrate_preferences(Spree::Calculator)
4
4
  migrate_preferences(Spree::PaymentMethod)
@@ -1,6 +1,6 @@
1
- class CreateSpreeStores < ActiveRecord::Migration
1
+ class CreateSpreeStores < ActiveRecord::Migration[4.2]
2
2
  def change
3
- if table_exists?(:spree_stores)
3
+ if data_source_exists?(:spree_stores)
4
4
  rename_column :spree_stores, :domains, :url
5
5
  rename_column :spree_stores, :email, :mail_from_address
6
6
  add_column :spree_stores, :meta_description, :text
@@ -1,4 +1,4 @@
1
- class CreateStoreFromPreferences < ActiveRecord::Migration
1
+ class CreateStoreFromPreferences < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  # workaround for spree_i18n and Store translations
4
4
  Spree::Store.class_eval do
@@ -20,7 +20,7 @@ class CreateStoreFromPreferences < ActiveRecord::Migration
20
20
  'Spree Demo Site'
21
21
  end
22
22
  s.url = preference_store.get 'spree/app_configuration/site_url' do
23
- 'demo.spreecommerce.com'
23
+ 'demo.spreecommerce.org'
24
24
  end
25
25
  s.mail_from_address = preference_store.get 'spree/app_configuration/mails_from' do
26
26
  'spree@example.com'
@@ -1,4 +1,4 @@
1
- class AddTimestampsToSpreeAssets < ActiveRecord::Migration
1
+ class AddTimestampsToSpreeAssets < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_assets, :created_at, :datetime
4
4
  add_column :spree_assets, :updated_at, :datetime
@@ -1,4 +1,4 @@
1
- class CreateSpreeTaxonsPromotionRules < ActiveRecord::Migration
1
+ class CreateSpreeTaxonsPromotionRules < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_taxons_promotion_rules do |t|
4
4
  t.references :taxon, index: true
@@ -1,4 +1,4 @@
1
- class AddAdditionalStoreFields < ActiveRecord::Migration
1
+ class AddAdditionalStoreFields < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_stores, :code, :string unless column_exists?(:spree_stores, :code)
4
4
  add_column :spree_stores, :default, :boolean, default: false, null: false unless column_exists?(:spree_stores, :default)
@@ -1,4 +1,4 @@
1
- class AddManyMissingIndexes < ActiveRecord::Migration
1
+ class AddManyMissingIndexes < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_index :spree_adjustments, [:adjustable_id, :adjustable_type]
4
4
  add_index :spree_adjustments, :eligible
@@ -1,4 +1,4 @@
1
- class CorrectSomePolymorphicIndexAndAddMoreMissing < ActiveRecord::Migration
1
+ class CorrectSomePolymorphicIndexAndAddMoreMissing < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_index :spree_addresses, :country_id
4
4
  add_index :spree_addresses, :state_id
@@ -1,4 +1,4 @@
1
- class AddUserIdCreatedByIdIndexToOrder < ActiveRecord::Migration
1
+ class AddUserIdCreatedByIdIndexToOrder < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_index :spree_orders, [:user_id, :created_by_id]
4
4
  end
@@ -1,8 +1,8 @@
1
- class ChangeSpreePriceAmountPrecision < ActiveRecord::Migration
1
+ class ChangeSpreePriceAmountPrecision < ActiveRecord::Migration[4.2]
2
2
  def change
3
- change_column :spree_prices, :amount, :decimal, :precision => 10, :scale => 2
4
- change_column :spree_line_items, :price, :decimal, :precision => 10, :scale => 2
5
- change_column :spree_line_items, :cost_price, :decimal, :precision => 10, :scale => 2
6
- change_column :spree_variants, :cost_price, :decimal, :precision => 10, :scale => 2
3
+ change_column :spree_prices, :amount, :decimal, precision: 10, scale: 2
4
+ change_column :spree_line_items, :price, :decimal, precision: 10, scale: 2
5
+ change_column :spree_line_items, :cost_price, :decimal, precision: 10, scale: 2
6
+ change_column :spree_variants, :cost_price, :decimal, precision: 10, scale: 2
7
7
  end
8
8
  end
@@ -1,4 +1,4 @@
1
- class AddTokenToSpreeOrders < ActiveRecord::Migration
1
+ class AddTokenToSpreeOrders < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_orders, :guest_token, :string
4
4
  end
@@ -1,4 +1,4 @@
1
- class MoveOrderTokenFromTokenizedPermission < ActiveRecord::Migration
1
+ class MoveOrderTokenFromTokenizedPermission < ActiveRecord::Migration[4.2]
2
2
  class Spree::TokenizedPermission < Spree::Base
3
3
  belongs_to :permissable, polymorphic: true
4
4
  end
@@ -6,7 +6,7 @@ class MoveOrderTokenFromTokenizedPermission < ActiveRecord::Migration
6
6
  def up
7
7
  case Spree::Order.connection.adapter_name
8
8
  when 'SQLite'
9
- Spree::Order.has_one :tokenized_permission, :as => :permissable
9
+ Spree::Order.has_one :tokenized_permission, as: :permissable
10
10
  Spree::Order.includes(:tokenized_permission).each do |o|
11
11
  o.update_column :guest_token, o.tokenized_permission.token
12
12
  end
@@ -1,4 +1,4 @@
1
- class SetShipmentTotalForUsersUpgrading < ActiveRecord::Migration
1
+ class SetShipmentTotalForUsersUpgrading < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  # NOTE You might not need this at all unless you're upgrading from Spree 2.1.x
4
4
  # or below. For those upgrading this should populate the Order#shipment_total
@@ -1,4 +1,4 @@
1
- class DropCreditCardFirstNameAndLastName < ActiveRecord::Migration
1
+ class DropCreditCardFirstNameAndLastName < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  remove_column :spree_credit_cards, :first_name, :string
4
4
  remove_column :spree_credit_cards, :last_name, :string
@@ -1,4 +1,4 @@
1
- class AddDeletedAtToSpreePromotionActions < ActiveRecord::Migration
1
+ class AddDeletedAtToSpreePromotionActions < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_promotion_actions, :deleted_at, :datetime
4
4
  add_index :spree_promotion_actions, :deleted_at
@@ -1,4 +1,4 @@
1
- class RemoveUncapturedAmountFromSpreePayments < ActiveRecord::Migration
1
+ class RemoveUncapturedAmountFromSpreePayments < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  remove_column :spree_payments, :uncaptured_amount
4
4
  end
@@ -1,4 +1,4 @@
1
- class CreateSpreeRefunds < ActiveRecord::Migration
1
+ class CreateSpreeRefunds < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_refunds do |t|
4
4
  t.integer :payment_id
@@ -1,4 +1,4 @@
1
- class CreateSpreeReturnAuthorizationInventoryUnit < ActiveRecord::Migration
1
+ class CreateSpreeReturnAuthorizationInventoryUnit < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_return_authorization_inventory_units do |t|
4
4
  t.integer :return_authorization_id
@@ -1,4 +1,4 @@
1
- class RenameReturnAuthorizationInventoryUnitToReturnItems < ActiveRecord::Migration
1
+ class RenameReturnAuthorizationInventoryUnitToReturnItems < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  rename_table :spree_return_authorization_inventory_units, :spree_return_items
4
4
  end
@@ -1,4 +1,4 @@
1
- class BackfillLineItemPreTaxAmount < ActiveRecord::Migration
1
+ class BackfillLineItemPreTaxAmount < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  # set pre_tax_amount to discounted_amount - included_tax_total
4
4
  execute(<<-SQL)
@@ -1,4 +1,4 @@
1
- class RecreateSpreeReturnAuthorizations < ActiveRecord::Migration
1
+ class RecreateSpreeReturnAuthorizations < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  # If the app has any legacy return authorizations then rename the table & columns and leave them there
4
4
  # for the spree_legacy_return_authorizations extension to pick up with.
@@ -34,7 +34,7 @@ class RecreateSpreeReturnAuthorizations < ActiveRecord::Migration
34
34
 
35
35
  Spree::Adjustment.where(source_type: 'Spree::LegacyReturnAuthorization').update_all(source_type: 'Spree::ReturnAuthorization')
36
36
 
37
- if table_exists?(:spree_legacy_return_authorizations)
37
+ if data_source_exists?(:spree_legacy_return_authorizations)
38
38
  rename_table :spree_legacy_return_authorizations, :spree_return_authorizations
39
39
  rename_column :spree_inventory_units, :legacy_return_authorization_id, :return_authorization_id
40
40
  else
@@ -1,4 +1,4 @@
1
- class AddAmountFieldsToReturnItems < ActiveRecord::Migration
1
+ class AddAmountFieldsToReturnItems < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_return_items, :pre_tax_amount, :decimal, precision: 10, scale: 2, default: 0.0, null: false
4
4
  add_column :spree_return_items, :included_tax_total, :decimal, precision: 10, scale: 2, default: 0.0, null: false
@@ -1,4 +1,4 @@
1
- class DropReturnAuthorizationAmount < ActiveRecord::Migration
1
+ class DropReturnAuthorizationAmount < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  remove_column :spree_return_authorizations, :amount
4
4
  end
@@ -1,4 +1,4 @@
1
- class CreateSpreeReturnAuthorizationReasons < ActiveRecord::Migration
1
+ class CreateSpreeReturnAuthorizationReasons < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_return_authorization_reasons do |t|
4
4
  t.string :name
@@ -1,4 +1,4 @@
1
- class CreateSpreeRefundReasons < ActiveRecord::Migration
1
+ class CreateSpreeRefundReasons < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_refund_reasons do |t|
4
4
  t.string :name
@@ -1,4 +1,4 @@
1
- class RenameReturnAuthorizationReason < ActiveRecord::Migration
1
+ class RenameReturnAuthorizationReason < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  rename_column :spree_return_authorizations, :reason, :memo
4
4
  end
@@ -1,4 +1,4 @@
1
- class CreateSpreePromotionCategories < ActiveRecord::Migration
1
+ class CreateSpreePromotionCategories < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_promotion_categories do |t|
4
4
  t.string :name
@@ -1,4 +1,4 @@
1
- class DropReceivedAtOnReturnItems < ActiveRecord::Migration
1
+ class DropReceivedAtOnReturnItems < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  remove_column :spree_return_items, :received_at
4
4
  end
@@ -1,4 +1,4 @@
1
- class AddReceptionAndAcceptanceStatusToReturnItems < ActiveRecord::Migration
1
+ class AddReceptionAndAcceptanceStatusToReturnItems < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_return_items, :reception_status, :string
4
4
  add_column :spree_return_items, :acceptance_status, :string
@@ -1,4 +1,4 @@
1
- class CreateDefaultRefundReason < ActiveRecord::Migration
1
+ class CreateDefaultRefundReason < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  Spree::RefundReason.create!(name: Spree::RefundReason::RETURN_PROCESSING_REASON, mutable: false)
4
4
  end
@@ -1,4 +1,4 @@
1
- class AddDefaultToSpreeStockLocations < ActiveRecord::Migration
1
+ class AddDefaultToSpreeStockLocations < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  unless column_exists? :spree_stock_locations, :default
4
4
  add_column :spree_stock_locations, :default, :boolean, null: false, default: false
@@ -1,4 +1,4 @@
1
- class CreateSpreeCustomerReturns < ActiveRecord::Migration
1
+ class CreateSpreeCustomerReturns < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_customer_returns do |t|
4
4
  t.string :number
@@ -1,4 +1,4 @@
1
- class AddCustomerReturnIdToReturnItem < ActiveRecord::Migration
1
+ class AddCustomerReturnIdToReturnItem < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_return_items, :customer_return_id, :integer
4
4
  add_index :spree_return_items, :customer_return_id, name: 'index_return_items_on_customer_return_id'
@@ -1,15 +1,15 @@
1
- class CreateFriendlyIdSlugs < ActiveRecord::Migration
1
+ class CreateFriendlyIdSlugs < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :friendly_id_slugs do |t|
4
- t.string :slug, :null => false
5
- t.integer :sluggable_id, :null => false
6
- t.string :sluggable_type, :limit => 50
4
+ t.string :slug, null: false
5
+ t.integer :sluggable_id, null: false
6
+ t.string :sluggable_type, limit: 50
7
7
  t.string :scope
8
8
  t.datetime :created_at
9
9
  end
10
10
  add_index :friendly_id_slugs, :sluggable_id
11
11
  add_index :friendly_id_slugs, [:slug, :sluggable_type]
12
- add_index :friendly_id_slugs, [:slug, :sluggable_type, :scope], :unique => true
12
+ add_index :friendly_id_slugs, [:slug, :sluggable_type, :scope], unique: true
13
13
  add_index :friendly_id_slugs, :sluggable_type
14
14
  end
15
15
  end
@@ -1,4 +1,4 @@
1
- class RenameSpreeRefundReturnAuthorizationId < ActiveRecord::Migration
1
+ class RenameSpreeRefundReturnAuthorizationId < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  rename_column :spree_refunds, :return_authorization_id, :customer_return_id
4
4
  end
@@ -1,4 +1,4 @@
1
- class IncreaseReturnItemPreTaxAmountPrecision < ActiveRecord::Migration
1
+ class IncreaseReturnItemPreTaxAmountPrecision < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  change_column :spree_return_items, :pre_tax_amount, :decimal, precision: 12, scale: 4, default: 0.0, null: false
4
4
  change_column :spree_return_items, :included_tax_total, :decimal, precision: 12, scale: 4, default: 0.0, null: false
@@ -1,11 +1,11 @@
1
- class CopyProductSlugsToSlugHistory < ActiveRecord::Migration
1
+ class CopyProductSlugsToSlugHistory < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
 
4
4
  # do what sql does best: copy all slugs into history table in a single query
5
5
  # rather than load potentially millions of products into memory
6
6
  Spree::Product.connection.execute <<-SQL
7
7
  INSERT INTO #{FriendlyId::Slug.table_name} (slug, sluggable_id, sluggable_type, created_at)
8
- SELECT slug, id, '#{Spree::Product.to_s}', #{ActiveRecord::Base.send(:sanitize_sql_array, ['?', Time.current])}
8
+ SELECT slug, id, '#{Spree::Product.to_s}', #{ApplicationRecord.send(:sanitize_sql_array, ['?', Time.current])}
9
9
  FROM #{Spree::Product.table_name}
10
10
  WHERE slug IS NOT NULL
11
11
  ORDER BY id
@@ -1,4 +1,4 @@
1
- class CreateSpreeReimbursements < ActiveRecord::Migration
1
+ class CreateSpreeReimbursements < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_reimbursements do |t|
4
4
  t.string :number
@@ -1,4 +1,4 @@
1
- class AddPromotionableToSpreeProducts < ActiveRecord::Migration
1
+ class AddPromotionableToSpreeProducts < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_products, :promotionable, :boolean, default: true
4
4
  end
@@ -1,4 +1,4 @@
1
- class AddExchangeInventoryUnitForeignKeys < ActiveRecord::Migration
1
+ class AddExchangeInventoryUnitForeignKeys < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_return_items, :exchange_inventory_unit_id, :integer
4
4
 
@@ -1,4 +1,4 @@
1
- class AddAcceptanceStatusErrorsToReturnItem < ActiveRecord::Migration
1
+ class AddAcceptanceStatusErrorsToReturnItem < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_return_items, :acceptance_status_errors, :text
4
4
  end
@@ -1,4 +1,4 @@
1
- class CreateSpreeReimbursementTypes < ActiveRecord::Migration
1
+ class CreateSpreeReimbursementTypes < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_reimbursement_types do |t|
4
4
  t.string :name
@@ -1,4 +1,4 @@
1
- class AddDefaultToShipmentCost < ActiveRecord::Migration
1
+ class AddDefaultToShipmentCost < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  change_column :spree_shipments, :cost, :decimal, precision: 10, scale: 2, default: 0.0
4
4
  Spree::Shipment.where(cost: nil).update_all(cost: 0)
@@ -1,4 +1,4 @@
1
- class AddDefaultToSpreeCreditCards < ActiveRecord::Migration
1
+ class AddDefaultToSpreeCreditCards < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_credit_cards, :default, :boolean, null: false, default: false
4
4
  end
@@ -1,4 +1,4 @@
1
- class MakeExistingCreditCardsDefault < ActiveRecord::Migration
1
+ class MakeExistingCreditCardsDefault < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  # set the newest credit card for every user to be the default; SQL technique from
4
4
  # http://stackoverflow.com/questions/121387/fetch-the-row-which-has-the-max-value-for-a-column
@@ -1,4 +1,4 @@
1
- class AddTypeToReimbursementType < ActiveRecord::Migration
1
+ class AddTypeToReimbursementType < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_reimbursement_types, :type, :string
4
4
  add_index :spree_reimbursement_types, :type
@@ -1,4 +1,4 @@
1
- class CreateSpreeReimbursementCredits < ActiveRecord::Migration
1
+ class CreateSpreeReimbursementCredits < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_reimbursement_credits do |t|
4
4
  t.decimal :amount, precision: 10, scale: 2, default: 0.0, null: false
@@ -1,4 +1,4 @@
1
- class AddMetaTitleToSpreeProducts < ActiveRecord::Migration
1
+ class AddMetaTitleToSpreeProducts < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  change_table :spree_products do |t|
4
4
  t.string :meta_title
@@ -1,4 +1,4 @@
1
- class AddKindToZone < ActiveRecord::Migration
1
+ class AddKindToZone < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_zones, :kind, :string
4
4
  add_index :spree_zones, :kind
@@ -1,4 +1,4 @@
1
- class AddCodeToSpreeTaxCategories < ActiveRecord::Migration
1
+ class AddCodeToSpreeTaxCategories < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_tax_categories, :tax_code, :string
4
4
  end
@@ -1,4 +1,4 @@
1
- class DefaultPreTaxAmountShouldBeZero < ActiveRecord::Migration
1
+ class DefaultPreTaxAmountShouldBeZero < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  change_column :spree_line_items, :pre_tax_amount, :decimal, precision: 8, scale: 2, default: 0
4
4
  change_column :spree_shipments, :pre_tax_amount, :decimal, precision: 8, scale: 2, default: 0
@@ -1,4 +1,4 @@
1
- class AddCodeToSpreeShippingMethods < ActiveRecord::Migration
1
+ class AddCodeToSpreeShippingMethods < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_shipping_methods, :code, :string
4
4
  end
@@ -1,4 +1,4 @@
1
- class AddCancelAuditFieldsToSpreeOrders < ActiveRecord::Migration
1
+ class AddCancelAuditFieldsToSpreeOrders < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_orders, :canceled_at, :datetime
4
4
  add_column :spree_orders, :canceler_id, :integer
@@ -1,4 +1,4 @@
1
- class AddStoreIdToOrders < ActiveRecord::Migration
1
+ class AddStoreIdToOrders < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_orders, :store_id, :integer
4
4
  if Spree::Store.default.persisted?
@@ -1,4 +1,4 @@
1
- class CreateSpreeTaxonsPrototypes < ActiveRecord::Migration
1
+ class CreateSpreeTaxonsPrototypes < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_taxons_prototypes do |t|
4
4
  t.belongs_to :taxon, index: true
@@ -1,4 +1,4 @@
1
- class AddStateLockVersionToOrder < ActiveRecord::Migration
1
+ class AddStateLockVersionToOrder < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_column :spree_orders, :state_lock_version, :integer, default: 0, null: false
4
4
  end
@@ -1,13 +1,8 @@
1
- class AddCounterCacheFromSpreeVariantsToSpreeStockItems < ActiveRecord::Migration
1
+ class AddCounterCacheFromSpreeVariantsToSpreeStockItems < ActiveRecord::Migration[4.2]
2
+ # This was unnecessary and was removed
2
3
  def up
3
- add_column :spree_variants, :stock_items_count, :integer, default: 0, null: false
4
-
5
- Spree::Variant.find_each do |variant|
6
- Spree::Variant.reset_counters(variant.id, :stock_items)
7
- end
8
4
  end
9
5
 
10
6
  def down
11
- remove_column :spree_variants, :stock_items_count
12
7
  end
13
8
  end
@@ -1,4 +1,4 @@
1
- class FixAdjustmentOrderPresence < ActiveRecord::Migration
1
+ class FixAdjustmentOrderPresence < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  say 'Fixing adjustments without direct order reference'
4
4
  Spree::Adjustment.where(order: nil).find_each do |adjustment|
@@ -1,4 +1,4 @@
1
- class UpdateClassificationsPositions < ActiveRecord::Migration
1
+ class UpdateClassificationsPositions < ActiveRecord::Migration[4.2]
2
2
  def up
3
3
  Spree::Taxon.all.each do |taxon|
4
4
  taxon.classifications.each_with_index do |c12n, i|
@@ -1,4 +1,4 @@
1
- class AddGuestTokenIndexToSpreeOrders < ActiveRecord::Migration
1
+ class AddGuestTokenIndexToSpreeOrders < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  add_index :spree_orders, :guest_token
4
4
  end
@@ -1,4 +1,4 @@
1
- class RemoveTokenPermissionsTable < ActiveRecord::Migration
1
+ class RemoveTokenPermissionsTable < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  # The MoveOrderTokenFromTokenizedPermission migration never dropped this.
4
4
  drop_table :spree_tokenized_permissions
@@ -1,4 +1,4 @@
1
- class RemoveExtraProductsSlugIndex < ActiveRecord::Migration
1
+ class RemoveExtraProductsSlugIndex < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  remove_index :spree_products, name: :permalink_idx_unique
4
4
  end
@@ -1,4 +1,4 @@
1
- class UpdateProductSlugIndex < ActiveRecord::Migration
1
+ class UpdateProductSlugIndex < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  remove_index :spree_products, :slug if index_exists?(:spree_products, :slug)
4
4
  add_index :spree_products, :slug, unique: true
@@ -1,4 +1,4 @@
1
- class RenameIdentifierToNumberForPayment < ActiveRecord::Migration
1
+ class RenameIdentifierToNumberForPayment < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  rename_column :spree_payments, :identifier, :number
4
4
  end
@@ -1,4 +1,4 @@
1
- class CreateSpreeStoreCredits < ActiveRecord::Migration
1
+ class CreateSpreeStoreCredits < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_store_credits do |t|
4
4
  t.references :user
@@ -1,4 +1,4 @@
1
- class CreateSpreeStoreCreditCategories < ActiveRecord::Migration
1
+ class CreateSpreeStoreCreditCategories < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_store_credit_categories do |t|
4
4
  t.string :name
@@ -1,4 +1,4 @@
1
- class CreateSpreeStoreCreditEvents < ActiveRecord::Migration
1
+ class CreateSpreeStoreCreditEvents < ActiveRecord::Migration[4.2]
2
2
  def change
3
3
  create_table :spree_store_credit_events do |t|
4
4
  t.integer :store_credit_id, null: false