fluxo 0.3.0 → 0.4.0

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: 9411907ecd9869558ef765adeb057b14d382d0da5576e5461d7ded3f27dc151e
4
- data.tar.gz: 8815e173af9d860f67296aea9db1880202c0c30a56b8b00e65ce820de4bad6e7
3
+ metadata.gz: b612a585bb68c44b74cb1a91fa40e4eb581ff04c324ca4dcf69de40c01532c3c
4
+ data.tar.gz: f95926ff8300c0aa4319af22a74d6d92e3c8c9355b099b334c19411eb2953def
5
5
  SHA512:
6
- metadata.gz: e67f568a96a0afef091d6865276f07b9be67cfac978795d53520b3c103e7b9dadfe552f019b470c9333c201ab1241707aacc5adcf1b18024a275b50a87368c7d
7
- data.tar.gz: c599c6723cba2de6c27699a2708299424b951c1a12204f2cb285f71b245d4afb0be2fa0dfbdb02212e8925fb2497769922d7056861da0ba7c37e8ab848db6645
6
+ metadata.gz: 8de0a5cce2096dcf8c516629ec4c55e6c20fb9f88c6fd30e2955700cebabd1ecdfec6d88c380098f596e731a780edb4a1ca756709c1fc00ad5028eb366ffb7c4
7
+ data.tar.gz: 6c042da8e26f029230e792bca0a2b918259a0fad8a52fb0509646520eedeb21559d676a99c350b772709d1add4da33088d286d902c8627b40c476c744cc91d32
data/.tool-versions CHANGED
@@ -1 +1 @@
1
- ruby 2.7.5
1
+ ruby 2.7.8
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- fluxo (0.3.0)
4
+ fluxo (0.4.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- fluxo (0.3.0)
4
+ fluxo (0.4.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- fluxo (0.3.0)
4
+ fluxo (0.4.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- fluxo (0.3.0)
4
+ fluxo (0.4.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: ..
3
3
  specs:
4
- fluxo (0.3.0)
4
+ fluxo (0.4.0)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -40,15 +40,17 @@ module Fluxo
40
40
  transient_attributes, transient_ids = attributes.dup, Hash.new { |h, k| h[k] = [] }
41
41
 
42
42
  result = nil
43
+ steps = steps.dup
43
44
  steps.unshift(:__validate_required_attributes__) if self.class.required_attributes.any? && validate
44
45
  steps.unshift(:__validate__) if self.class.validations_proxy && validate
45
46
  steps.each_with_index do |step, idx|
46
47
  if step.is_a?(Hash)
47
- group_result = step.each do |group_method, group_steps|
48
+ step.each do |group_method, group_steps|
49
+ recursive_result = nil
48
50
  send(group_method, **transient_attributes) do |group_attrs|
49
- result = __execute_flow__(validate: false, steps: group_steps, attributes: (group_attrs || transient_attributes))
51
+ recursive_result = __execute_flow__(validate: false, steps: group_steps, attributes: (group_attrs || transient_attributes))
50
52
  end
51
- result = group_result if group_result.is_a?(Fluxo::Result)
53
+ result = recursive_result if recursive_result.is_a?(Fluxo::Result)
52
54
  break unless result.success?
53
55
  transient_attributes = result.transient_attributes # Update transient attributes with the group result in case of value is not a Hash
54
56
  end
data/lib/fluxo/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Fluxo
4
- VERSION = "0.3.0"
4
+ VERSION = "0.4.0"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: fluxo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcos G. Zimmermann
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-02-14 00:00:00.000000000 Z
11
+ date: 2025-12-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: standard
@@ -113,7 +113,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
113
113
  - !ruby/object:Gem::Version
114
114
  version: '0'
115
115
  requirements: []
116
- rubygems_version: 3.1.6
116
+ rubygems_version: 3.4.22
117
117
  signing_key:
118
118
  specification_version: 4
119
119
  summary: Simple Ruby DSL to create operation service objects.