trailblazer-activity-dsl-linear 1.0.0 → 1.2.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 +4 -4
- data/.github/workflows/ci.yml +2 -3
- data/CHANGES.md +100 -0
- data/Gemfile +7 -4
- data/Rakefile +1 -1
- data/lib/trailblazer/activity/dsl/linear/feature/merge.rb +2 -2
- data/lib/trailblazer/activity/dsl/linear/feature/patch.rb +9 -5
- data/lib/trailblazer/activity/dsl/linear/feature/variable_mapping/dsl.rb +241 -156
- data/lib/trailblazer/activity/dsl/linear/feature/variable_mapping/runtime.rb +276 -0
- data/lib/trailblazer/activity/dsl/linear/feature/variable_mapping.rb +70 -226
- data/lib/trailblazer/activity/dsl/linear/helper/path.rb +37 -18
- data/lib/trailblazer/activity/dsl/linear/helper.rb +38 -17
- data/lib/trailblazer/activity/dsl/linear/normalizer/extensions.rb +63 -0
- data/lib/trailblazer/activity/dsl/linear/normalizer/inherit.rb +90 -0
- data/lib/trailblazer/activity/dsl/linear/normalizer/output_tuples.rb +160 -0
- data/lib/trailblazer/activity/dsl/linear/normalizer/terminus.rb +26 -29
- data/lib/trailblazer/activity/dsl/linear/normalizer.rb +99 -160
- data/lib/trailblazer/activity/dsl/linear/sequence/builder.rb +3 -2
- data/lib/trailblazer/activity/dsl/linear/sequence/compiler.rb +21 -17
- data/lib/trailblazer/activity/dsl/linear/sequence/search.rb +2 -8
- data/lib/trailblazer/activity/dsl/linear/strategy.rb +56 -17
- data/lib/trailblazer/activity/dsl/linear/version.rb +1 -1
- data/lib/trailblazer/activity/dsl/linear.rb +13 -1
- data/lib/trailblazer/activity/fast_track.rb +96 -67
- data/lib/trailblazer/activity/path.rb +35 -53
- data/lib/trailblazer/activity/railway.rb +63 -65
- data/trailblazer-activity-dsl-linear.gemspec +8 -8
- metadata +27 -18
- data/lib/trailblazer/activity/dsl/linear/feature/variable_mapping/inherit.rb +0 -38
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: trailblazer-activity-dsl-linear
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nick Sutterer
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2023-03-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: trailblazer-activity
|
@@ -16,20 +16,20 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
19
|
+
version: 0.16.0
|
20
20
|
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
|
-
version: 0.
|
22
|
+
version: 0.17.0
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
26
26
|
requirements:
|
27
27
|
- - ">="
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version: 0.
|
29
|
+
version: 0.16.0
|
30
30
|
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
|
-
version: 0.
|
32
|
+
version: 0.17.0
|
33
33
|
- !ruby/object:Gem::Dependency
|
34
34
|
name: trailblazer-declarative
|
35
35
|
requirement: !ruby/object:Gem::Requirement
|
@@ -68,16 +68,22 @@ dependencies:
|
|
68
68
|
name: minitest
|
69
69
|
requirement: !ruby/object:Gem::Requirement
|
70
70
|
requirements:
|
71
|
-
- - "
|
71
|
+
- - ">="
|
72
|
+
- !ruby/object:Gem::Version
|
73
|
+
version: 5.15.0
|
74
|
+
- - "<"
|
72
75
|
- !ruby/object:Gem::Version
|
73
|
-
version:
|
76
|
+
version: 5.16.0
|
74
77
|
type: :development
|
75
78
|
prerelease: false
|
76
79
|
version_requirements: !ruby/object:Gem::Requirement
|
77
80
|
requirements:
|
78
|
-
- - "
|
81
|
+
- - ">="
|
79
82
|
- !ruby/object:Gem::Version
|
80
|
-
version:
|
83
|
+
version: 5.15.0
|
84
|
+
- - "<"
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
version: 5.16.0
|
81
87
|
- !ruby/object:Gem::Dependency
|
82
88
|
name: rake
|
83
89
|
requirement: !ruby/object:Gem::Requirement
|
@@ -93,19 +99,19 @@ dependencies:
|
|
93
99
|
- !ruby/object:Gem::Version
|
94
100
|
version: '0'
|
95
101
|
- !ruby/object:Gem::Dependency
|
96
|
-
name: trailblazer-
|
102
|
+
name: trailblazer-core-utils
|
97
103
|
requirement: !ruby/object:Gem::Requirement
|
98
104
|
requirements:
|
99
|
-
- -
|
105
|
+
- - '='
|
100
106
|
- !ruby/object:Gem::Version
|
101
|
-
version: 0.0.
|
107
|
+
version: 0.0.2
|
102
108
|
type: :development
|
103
109
|
prerelease: false
|
104
110
|
version_requirements: !ruby/object:Gem::Requirement
|
105
111
|
requirements:
|
106
|
-
- -
|
112
|
+
- - '='
|
107
113
|
- !ruby/object:Gem::Version
|
108
|
-
version: 0.0.
|
114
|
+
version: 0.0.2
|
109
115
|
description: Simple DSL to define Trailblazer activities with arbitrary wirings.
|
110
116
|
email:
|
111
117
|
- apotonick@gmail.com
|
@@ -127,10 +133,13 @@ files:
|
|
127
133
|
- lib/trailblazer/activity/dsl/linear/feature/patch.rb
|
128
134
|
- lib/trailblazer/activity/dsl/linear/feature/variable_mapping.rb
|
129
135
|
- lib/trailblazer/activity/dsl/linear/feature/variable_mapping/dsl.rb
|
130
|
-
- lib/trailblazer/activity/dsl/linear/feature/variable_mapping/
|
136
|
+
- lib/trailblazer/activity/dsl/linear/feature/variable_mapping/runtime.rb
|
131
137
|
- lib/trailblazer/activity/dsl/linear/helper.rb
|
132
138
|
- lib/trailblazer/activity/dsl/linear/helper/path.rb
|
133
139
|
- lib/trailblazer/activity/dsl/linear/normalizer.rb
|
140
|
+
- lib/trailblazer/activity/dsl/linear/normalizer/extensions.rb
|
141
|
+
- lib/trailblazer/activity/dsl/linear/normalizer/inherit.rb
|
142
|
+
- lib/trailblazer/activity/dsl/linear/normalizer/output_tuples.rb
|
134
143
|
- lib/trailblazer/activity/dsl/linear/normalizer/terminus.rb
|
135
144
|
- lib/trailblazer/activity/dsl/linear/sequence.rb
|
136
145
|
- lib/trailblazer/activity/dsl/linear/sequence/builder.rb
|
@@ -142,7 +151,7 @@ files:
|
|
142
151
|
- lib/trailblazer/activity/path.rb
|
143
152
|
- lib/trailblazer/activity/railway.rb
|
144
153
|
- trailblazer-activity-dsl-linear.gemspec
|
145
|
-
homepage:
|
154
|
+
homepage: https://trailblazer.to/2.1/docs/activity
|
146
155
|
licenses:
|
147
156
|
- LGPL-3.0
|
148
157
|
metadata: {}
|
@@ -154,7 +163,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
154
163
|
requirements:
|
155
164
|
- - ">="
|
156
165
|
- !ruby/object:Gem::Version
|
157
|
-
version: 2.
|
166
|
+
version: 2.5.0
|
158
167
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
159
168
|
requirements:
|
160
169
|
- - ">="
|
@@ -1,38 +0,0 @@
|
|
1
|
-
module Trailblazer
|
2
|
-
class Activity
|
3
|
-
module DSL
|
4
|
-
module Linear
|
5
|
-
module VariableMapping
|
6
|
-
# Implements the {inherit: [:variable_mapping]} feature.
|
7
|
-
module Inherit
|
8
|
-
def self.extended(strategy) # FIXME: who implements {extend!}
|
9
|
-
Linear::Normalizer.extend!(strategy, :step) do |normalizer|
|
10
|
-
Linear::Normalizer.prepend_to(
|
11
|
-
normalizer,
|
12
|
-
"activity.normalize_input_output_filters",
|
13
|
-
{
|
14
|
-
"variable_mapping.inherit_option" => Linear::Normalizer.Task(VariableMapping::Inherit::Normalizer.method(:inherit_option)),
|
15
|
-
}
|
16
|
-
)
|
17
|
-
end
|
18
|
-
end
|
19
|
-
|
20
|
-
module Normalizer
|
21
|
-
# Inheriting the original I/O happens by grabbing the variable_mapping_pipelines
|
22
|
-
# from the original sequence and pass it on in the normalizer.
|
23
|
-
# It will eventually get processed by {VariableMapping#pipe_for_composable_input} etc.
|
24
|
-
def self.inherit_option(ctx, inherit: [], sequence:, id:, **)
|
25
|
-
return unless inherit.include?(:variable_mapping)
|
26
|
-
|
27
|
-
inherited_input_pipeline, inherited_output_pipeline = Linear::Normalizer::InheritOption.find_row(sequence, id).data[:variable_mapping_pipelines]
|
28
|
-
|
29
|
-
ctx[:initial_input_pipeline] = inherited_input_pipeline
|
30
|
-
ctx[:initial_output_pipeline] = inherited_output_pipeline
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
34
|
-
end # VariableMapping
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|