solidus_core 2.5.0.beta1 → 2.5.0.beta2

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.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 87afc5077e860c226c85bb1b65fef534eea82174295c6650225ec4d06b5d03ba
4
- data.tar.gz: d13a7557dd557f3d285ef7734de1a427b7c256d9433f2752bcf69e8c9dae6e17
3
+ metadata.gz: eea3e082ced1d6d489258eb5eb17e2f9d69d455be304f10d947cd4eb82f6d3ce
4
+ data.tar.gz: ab928452cf6ce9bd4bb658e7878ce7a816f56cc44cc2ff1e14faa26a642c8e40
5
5
  SHA512:
6
- metadata.gz: 9fd697a0d3056759267af069b85c21e6c4d480858dbf29b8db4a3c61ebec6568e037c5b75901ca5f64a52eb74d8d3b64d93e444a4f50bde1bf58c6652d003b57
7
- data.tar.gz: a874cdab7c718290bc92e7add51f3df2f13208888c8399b0d07ad4b5fd13e6fc6acc501839cf9ac53c543e9fc676e670577b38f37463d3e2c0b875cd9a460265
6
+ metadata.gz: 3341402dad6a4a27e844aa6390c4fc5fe73c56e757798503362d74842cbb17e2fa1389bfab3b1f88965e7e18eeb465b3897f29585e0b646d2dd30a22ce002732
7
+ data.tar.gz: e3e782f4b5f4faa8f0355460eb4a737479cf36094ca2fd3032c068d602f1a21f42069e80dfc8b90ef883fef115b2c61a1b15995dcebd7f4775b4b0c8e189c33b
@@ -26,27 +26,22 @@ class ::Spree::PromotionCode::BatchBuilder
26
26
  private
27
27
 
28
28
  def generate_random_codes
29
- total_batches = (number_of_codes.to_f / self.class.batch_size).ceil
29
+ created_codes = 0
30
30
 
31
- total_batches.times do |i|
32
- codes_for_current_batch = Set.new
33
- codes_to_generate = [self.class.batch_size, number_of_codes - i * batch_size].min
31
+ while created_codes < number_of_codes
32
+ max_codes_to_generate = [self.class.batch_size, number_of_codes - created_codes].min
34
33
 
35
- while codes_for_current_batch.size < codes_to_generate
36
- new_codes = Array.new(codes_to_generate) { generate_random_code }.to_set
37
- codes_for_current_batch += get_unique_codes(new_codes)
38
- end
34
+ new_codes = Array.new(max_codes_to_generate) { generate_random_code }.uniq
35
+ codes_for_current_batch = get_unique_codes(new_codes)
39
36
 
40
- codes_for_current_batch.map do |value|
41
- promotion.codes.build(value: value, promotion_code_batch: promotion_code_batch)
37
+ codes_for_current_batch.each do |value|
38
+ Spree::PromotionCode.create!(
39
+ value: value,
40
+ promotion: promotion,
41
+ promotion_code_batch: promotion_code_batch
42
+ )
42
43
  end
43
-
44
- promotion.save!
45
-
46
- # We have to reload the promotion because otherwise all promotion codes
47
- # we are creating will remain in memory. Doing a reload will remove all
48
- # codes from memory.
49
- promotion.reload
44
+ created_codes += codes_for_current_batch.size
50
45
  end
51
46
  end
52
47
 
@@ -1 +1 @@
1
- Spree::RefundReason.find_or_create_by(name: "Return processing")
1
+ Spree::RefundReason.find_or_create_by!(name: "Return processing", mutable: false)
@@ -1,6 +1,6 @@
1
1
  module Spree
2
2
  def self.solidus_version
3
- "2.5.0.beta1"
3
+ "2.5.0.beta2"
4
4
  end
5
5
 
6
6
  def self.solidus_gem_version
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solidus_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.0.beta1
4
+ version: 2.5.0.beta2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Solidus Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-02-14 00:00:00.000000000 Z
11
+ date: 2018-02-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: actionmailer
@@ -1136,7 +1136,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1136
1136
  version: 1.8.23
1137
1137
  requirements: []
1138
1138
  rubyforge_project:
1139
- rubygems_version: 2.7.3
1139
+ rubygems_version: 2.7.6
1140
1140
  signing_key:
1141
1141
  specification_version: 4
1142
1142
  summary: Essential models, mailers, and classes for the Solidus e-commerce project.