eco-helpers 3.1.3 → 3.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 75b6d72678a1efcda647811efab5d3271ef9aeab09fe0e615f676849bcf3e778
4
- data.tar.gz: 935421753b4ec2b08f88e9fe786652b3da0fafaaa64ce9251531bccad73431ef
3
+ metadata.gz: d90d0437d82cfb02acb981d200aaf20a67c18c1d33e19f1c81fe29c6ca7c9501
4
+ data.tar.gz: 7e9c99c233adcda692cbe3f0e31c154a2bdcc970dbfa4cd853ed64039c205431
5
5
  SHA512:
6
- metadata.gz: 5c1ddf191f0e744aeb67235e74075c410cfdb4644d8061a768889c6f04bf3e89732f5adc37b2086ed166a64a0483d51d786e1d6c63131bedd3731312d852d86a
7
- data.tar.gz: 7c0e5730bb34d18f1bc04fd2e17c470b7ff0d8a2e9c7b7398bae9385528fcafdf545a64f9c924c5f3b613fa08234359f5379feac10ebd214377948cb6d687690
6
+ metadata.gz: 4a3ccbbb86b403a5fcbe77dd13b34b6088edd238b08293ab5d55b254a6ff987abefd6b00bcb0fdfda2ea03bc256082107264ab80fec83a266144dd421bf322bc
7
+ data.tar.gz: 436360d8633631c039b1a8caeec9781bc68a79cdcfe7cb943e1edfb65f873f3a916a158a647bbc7871003338fddc7f9760edce6c6c6e59b3cba44c5095a555be
data/CHANGELOG.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
- ## [3.1.4] - 2025-05-xx
5
+ ## [3.1.5] - 2025-05-xx
6
6
 
7
7
  ### Added
8
8
 
@@ -10,6 +10,18 @@ All notable changes to this project will be documented in this file.
10
10
 
11
11
  ### Fixed
12
12
 
13
+ ## [3.1.4] - 2025-05-15
14
+
15
+ ### Changed
16
+
17
+ - upgraded `ecoportal-api` gem.
18
+ - `Eco::API::Session::Batch::Launcher`
19
+ - **Added** `#allowed_retries`: when in `:job` mode, it will NOT allow any re-tries.
20
+ - Renamed constant `TIMEOUT_RETRIES` to `ALLOWED_RETRIES` and **moved** to `Retry` module.
21
+ - ``Eco::API::Session::Batch::Launcher::ModeSize`
22
+ - **Increased** default Job max size to `500` (it was `100`).
23
+ - **Increased** default Job min size to `50` (it was `15`).
24
+
13
25
  ## [3.1.3] - 2025-05-14
14
26
 
15
27
  ### Changed
data/eco-helpers.gemspec CHANGED
@@ -41,7 +41,7 @@ Gem::Specification.new do |spec|
41
41
  spec.add_dependency 'bcrypt_pbkdf', '~> 1.0'
42
42
  spec.add_dependency 'docx', '>= 0.8.0', '< 0.9'
43
43
  spec.add_dependency 'dotenv', '~> 3'
44
- spec.add_dependency 'ecoportal-api', '~> 0.10', '>= 0.10.10'
44
+ spec.add_dependency 'ecoportal-api', '~> 0.10', '>= 0.10.11'
45
45
  spec.add_dependency 'ecoportal-api-graphql', '~> 1.1', '>= 1.1.1'
46
46
  spec.add_dependency 'ecoportal-api-v2', '~> 3.1', '>= 3.1.1'
47
47
  spec.add_dependency 'ed25519', '~> 1.2'
@@ -7,8 +7,8 @@ module Eco
7
7
  include Eco::API::Session::Batch::Launcher::Options
8
8
 
9
9
  DEFAULT_BATCH_SIZE = 50
10
- DEFAULT_JOB_SIZE = 100
11
- MIN_JOB_SIZE = 15
10
+ DEFAULT_JOB_SIZE = 500
11
+ MIN_JOB_SIZE = 50
12
12
 
13
13
  def batch_size(opts = options)
14
14
  return job_mode_size if job_mode?(opts)
@@ -19,6 +19,7 @@ module Eco
19
19
  private
20
20
 
21
21
  # Swaps to batch endpoint on specific errors
22
+ # @note it does it only once.
22
23
  def batch_mode_on(
23
24
  *error_types,
24
25
  options: self.options,
@@ -4,6 +4,8 @@ module Eco
4
4
  class Batch
5
5
  module Launcher
6
6
  module Retry
7
+ ALLOWED_RETRIES = 2 # 3 times (including first launch)
8
+
7
9
  def self.included(base)
8
10
  unless base <= Eco::API::Session::Batch::Launcher
9
11
  msg = 'To be included only in Eco::API::Common::Session::BaseSession. '
@@ -16,7 +18,7 @@ module Eco
16
18
 
17
19
  private
18
20
 
19
- def offer_retry_on(*error_types, retries_left: 3, &block)
21
+ def offer_retry_on(*error_types, retries_left: ALLOWED_RETRIES, &block)
20
22
  yield
21
23
  rescue *error_types => err
22
24
  raise err.class, err.message, cause: nil unless retries_left.positive?
@@ -28,7 +28,6 @@ module Eco
28
28
  include StatusHandling
29
29
  include Retry
30
30
 
31
- TIMEOUT_RETRIES = 2
32
31
  RETRY_ON = [
33
32
  Ecoportal::API::Errors::TimeOut,
34
33
  Ecoportal::API::Errors::StartTimeOut
@@ -58,6 +57,12 @@ module Eco
58
57
  )
59
58
  end
60
59
 
60
+ def allowed_retries(in_job_mode)
61
+ return 0 if in_job_mode
62
+
63
+ self.class::ALLOWED_RETRIES
64
+ end
65
+
61
66
  def launch_batch( # rubocop:disable Metrics/AbcSize, Metrics/MethodLength
62
67
  data,
63
68
  method:,
@@ -99,7 +104,10 @@ module Eco
99
104
 
100
105
  start_slice = Time.now
101
106
 
102
- offer_retry_on(*RETRY_ON, retries_left: TIMEOUT_RETRIES) do
107
+ offer_retry_on(
108
+ *RETRY_ON,
109
+ retries_left: allowed_retries(as_job_mode)
110
+ ) do
103
111
  people_api.batch(job_mode: as_job_mode) do |batch|
104
112
  slice.each do |person|
105
113
  batch.public_send(method, person) do |response|
data/lib/eco/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Eco
2
- VERSION = '3.1.3'.freeze
2
+ VERSION = '3.1.4'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: eco-helpers
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.1.3
4
+ version: 3.1.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Oscar Segura
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-05-13 00:00:00.000000000 Z
11
+ date: 2025-05-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: byebug
@@ -243,7 +243,7 @@ dependencies:
243
243
  version: '0.10'
244
244
  - - ">="
245
245
  - !ruby/object:Gem::Version
246
- version: 0.10.10
246
+ version: 0.10.11
247
247
  type: :runtime
248
248
  prerelease: false
249
249
  version_requirements: !ruby/object:Gem::Requirement
@@ -253,7 +253,7 @@ dependencies:
253
253
  version: '0.10'
254
254
  - - ">="
255
255
  - !ruby/object:Gem::Version
256
- version: 0.10.10
256
+ version: 0.10.11
257
257
  - !ruby/object:Gem::Dependency
258
258
  name: ecoportal-api-graphql
259
259
  requirement: !ruby/object:Gem::Requirement