trailblazer-activity-dsl-linear 0.3.5 → 0.4.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6d438f16110a2a03d05d08edfb0e74be8d92bd031b61818d0c6a87cbe500a9d0
4
- data.tar.gz: e4f769408c024853dee3c6b1f8a57a1e2276848c8d7e7e4a35d4e5174f8ffaf5
3
+ metadata.gz: 9953750b2e208755037a9f48a7847edc3a3ccdf54bd4ab121be8e8666b85e41f
4
+ data.tar.gz: 1d36eeb6036cf7a7a8fc234c78ccf90507de7f3f380a6a3fd92f432e1efe246f
5
5
  SHA512:
6
- metadata.gz: 0c0df72aa24b1d7e93767d968d55a16c2f2193fd2819175a28822a5a178e0abb364768bac09a30bb41801b94084c9f44f2ea1fe0356db5a5d33b56f92c572430
7
- data.tar.gz: 88b45c45f818435b8484a1aec585a397df887fc8174bdc8e57d7993e905100025bb26642bfae3efdd83b8a5075a439ad11ea59270b6f9c8c6c1246a673c63c12
6
+ metadata.gz: d50d156f2daed3fccf7c78d978896e4a94d5cf6ef854f9e77ace7186700703c45c1aed21a551b27f0343d4d0ed33694958be936fc6a5651505cf6b368052dd83
7
+ data.tar.gz: 2b53f6d85d4e0e65407cb90c82ce34be3c55e3ba6b1dfdb25ae64a04be5d19617410c91da532f09cb2ed6058eb7e28e18e11bc3e68d5f83b197ef0792d3e2b15
@@ -0,0 +1,17 @@
1
+ name: CI
2
+ on: [push, pull_request]
3
+ jobs:
4
+ test:
5
+ strategy:
6
+ fail-fast: false
7
+ matrix:
8
+ # Due to https://github.com/actions/runner/issues/849, we have to use quotes for '3.0'
9
+ ruby: [2.5, 2.6, 2.7, '3.0', head, jruby, jruby-head]
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: actions/checkout@v2
13
+ - uses: ruby/setup-ruby@v1
14
+ with:
15
+ ruby-version: ${{ matrix.ruby }}
16
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
17
+ - run: bundle exec rake
data/CHANGES.md CHANGED
@@ -1,3 +1,20 @@
1
+ # 0.4.3
2
+
3
+ * Limit `trailblazer-activity` dependency to `< 0.13.0`.
4
+
5
+ # 0.4.2
6
+
7
+ * Don't allow duplicate activities in Sequence (#47) :ghost:
8
+ * {:inherit} will only inherit the wirings supported in child activity (#48)
9
+
10
+ # 0.4.1
11
+
12
+ * Updrading `trailblazer-activity` to use shiny `trailblazer-option`.
13
+
14
+ # 0.4.0
15
+
16
+ * Support for Ruby 3.0.
17
+
1
18
  # 0.3.5
2
19
 
3
20
  * Retain custom wirings within subprocess while patching.
data/Gemfile CHANGED
@@ -5,7 +5,8 @@ gemspec
5
5
 
6
6
  gem "minitest-line"
7
7
 
8
- # gem "trailblazer-context", path: "../trailblazer-context"
8
+ gem "rubocop", require: false
9
+
9
10
  # gem "trailblazer-developer", path: "../trailblazer-developer"
10
11
  # gem "trailblazer-activity", path: "../trailblazer-activity"
11
12
  # gem "trailblazer-activity", path: "../circuit"
@@ -19,7 +19,7 @@ module Trailblazer
19
19
  def call(sequence, find_stops: method(:find_stop_task_ids), find_start: method(:find_start_task_ids))
20
20
  _implementations, intermediate_wiring =
21
21
  sequence.inject([[], []]) do |(implementations, intermediates), seq_row|
22
- magnetic_to, task, connections, data = seq_row
22
+ _magnetic_to, task, connections, data = seq_row
23
23
  id = data[:id]
24
24
 
25
25
  # execute all {Search}s for one sequence row.
@@ -62,7 +62,7 @@ module Trailblazer
62
62
 
63
63
  if task.is_a?(Symbol)
64
64
  # step task: :find, id: :load
65
- { **ctx[:options], id: (id || task), task: Trailblazer::Option( task ) }
65
+ { **ctx[:options], id: (id || task), task: Trailblazer::Option(task) }
66
66
  else
67
67
  # step task: Callable, ... (Subprocess, Proc, macros etc)
68
68
  ctx[:options] # NOOP
@@ -196,7 +196,7 @@ module Trailblazer
196
196
  def add_end(end_event, magnetic_to:, id:)
197
197
 
198
198
  options = Path::DSL.append_end_options(task: end_event, magnetic_to: magnetic_to, id: id)
199
- row = Linear::Sequence.create_row(options)
199
+ row = Linear::Sequence.create_row(**options)
200
200
 
201
201
  {
202
202
  row: row,
@@ -224,7 +224,7 @@ module Trailblazer
224
224
  end
225
225
 
226
226
  def input_output_dsl((ctx, flow_options), *)
227
- config = ctx.select { |k,v| [:input, :output].include?(k) } # TODO: optimize this, we don't have to go through the entire hash.
227
+ config = ctx.select { |k,v| [:input, :output, :output_with_outer_ctx].include?(k) } # TODO: optimize this, we don't have to go through the entire hash.
228
228
 
229
229
  return Trailblazer::Activity::Right, [ctx, flow_options] if config.size == 0 # no :input/:output passed.
230
230
 
@@ -246,13 +246,21 @@ module Trailblazer
246
246
  index = Linear::Insert.find_index(sequence, id)
247
247
  row = sequence[index] # from this row we're inheriting options.
248
248
 
249
- extensions = (row[3][:extensions]||[]) + (ctx[:extensions]||[]) # FIXME: DEFAULTING, FOR FUCK'S SAKE
249
+ connections = get_inheritable_connections(ctx, row[3][:connections])
250
+ extensions = Array(row[3][:extensions]) + Array(ctx[:extensions])
250
251
 
251
- ctx = ctx.merge(connections: row[3][:connections], extensions: extensions) # "inherit"
252
+ ctx = ctx.merge(connections: connections, extensions: extensions) # "inherit"
252
253
 
253
254
  return Trailblazer::Activity::Right, [ctx, flow_options]
254
255
  end
255
256
 
257
+ # return connections from {parent} step which are supported by current step
258
+ private def get_inheritable_connections(ctx, parent_connections)
259
+ return parent_connections unless ctx[:outputs]
260
+
261
+ parent_connections.slice(*ctx[:outputs].keys)
262
+ end
263
+
256
264
  # TODO: make this extendable!
257
265
  def cleanup_options((ctx, flow_options), *)
258
266
  # new_ctx = ctx.reject { |k, v| [:connections, :outputs, :end_id, :step_interface_builder, :failure_end, :track_name, :sequence].include?(k) }
@@ -30,7 +30,7 @@ module Trailblazer
30
30
  end
31
31
 
32
32
  def update_sequence(&block)
33
- @sequence = yield(to_h)
33
+ @sequence = yield(**to_h)
34
34
  end
35
35
 
36
36
  def update_options(fields)
@@ -58,7 +58,7 @@ module Trailblazer
58
58
  # by the DSL user. This is usually when you call Operation::step.
59
59
  def call(name, *args)
60
60
  normalizer = @normalizers.fetch(name)
61
- signal, (options, _) = normalizer.(*args)
61
+ _signal, (options, _) = normalizer.(*args)
62
62
  options
63
63
  end
64
64
  end
@@ -31,7 +31,7 @@ module Trailblazer
31
31
  # Compute the sequence rows.
32
32
  options = normalizers.(type, normalizer_options: normalizer_options, options: task, user_options: options.merge(sequence: sequence))
33
33
 
34
- sequence = Activity::DSL::Linear::DSL.apply_adds_from_dsl(sequence, options)
34
+ sequence = Activity::DSL::Linear::DSL.apply_adds_from_dsl(sequence, **options)
35
35
  end
36
36
  end
37
37
 
@@ -98,10 +98,10 @@ module Trailblazer
98
98
  end
99
99
 
100
100
  # Injects {:exec_context} so that {:instance_method}s work.
101
- def call(args, circuit_options={})
101
+ def call(args, **circuit_options)
102
102
  @activity.(
103
103
  args,
104
- circuit_options.merge(exec_context: new)
104
+ **circuit_options.merge(exec_context: new)
105
105
  )
106
106
  end
107
107
 
@@ -4,15 +4,17 @@ module Trailblazer
4
4
  module Linear
5
5
  # Normalizer-steps to implement {:input} and {:output}
6
6
  # Returns an Extension instance to be thrown into the `step` DSL arguments.
7
- def self.VariableMapping(input: VariableMapping.default_input, output: VariableMapping.default_output)
7
+ def self.VariableMapping(input: VariableMapping.default_input, output: VariableMapping.default_output, output_with_outer_ctx: false)
8
8
  input =
9
9
  VariableMapping::Input::Scoped.new(
10
- Trailblazer::Option::KW( VariableMapping::filter_for(input) )
10
+ Trailblazer::Option(VariableMapping::filter_for(input))
11
11
  )
12
12
 
13
+ unscope_class = output_with_outer_ctx ? VariableMapping::Output::Unscoped::WithOuterContext : VariableMapping::Output::Unscoped
14
+
13
15
  output =
14
- VariableMapping::Output::Unscoped.new(
15
- Trailblazer::Option::KW( VariableMapping::filter_for(output) )
16
+ unscope_class.new(
17
+ Trailblazer::Option(VariableMapping::filter_for(output))
16
18
  )
17
19
 
18
20
  TaskWrap::Extension(
@@ -36,6 +38,7 @@ module Trailblazer
36
38
  ->(ctx, **) { ctx }
37
39
  end
38
40
 
41
+ # Returns a filter proc to be called in an Option.
39
42
  # @private
40
43
  def filter_for(filter)
41
44
  if filter.is_a?(::Array) || filter.is_a?(::Hash)
@@ -45,13 +48,24 @@ module Trailblazer
45
48
  end
46
49
  end
47
50
 
51
+ # @private
52
+ def output_option_for(option, pass_outer_ctx) # DISCUSS: not sure I like this.
53
+
54
+ return option if pass_outer_ctx
55
+ # OutputReceivingInnerCtxOnly =
56
+
57
+ # don't pass {outer_ctx}, only {inner_ctx}. this is the default.
58
+ return ->(inner_ctx, outer_ctx, **kws) { option.(inner_ctx, **kws) }
59
+ end
60
+
61
+
48
62
  module DSL
49
63
  # The returned filter compiles a new hash for Scoped/Unscoped that only contains
50
64
  # the desired i/o variables.
51
65
  def self.filter_from_dsl(map)
52
66
  hsh = DSL.hash_for(map)
53
67
 
54
- ->(incoming_ctx, kwargs) { Hash[hsh.collect { |from_name, to_name| [to_name, incoming_ctx[from_name]] }] }
68
+ ->(incoming_ctx, **kwargs) { Hash[hsh.collect { |from_name, to_name| [to_name, incoming_ctx[from_name]] }] }
55
69
  end
56
70
 
57
71
  def self.hash_for(ary)
@@ -60,7 +74,6 @@ module Trailblazer
60
74
  end
61
75
  end
62
76
 
63
-
64
77
  module Input
65
78
  class Scoped
66
79
  def initialize(filter)
@@ -69,7 +82,7 @@ module Trailblazer
69
82
 
70
83
  def call((original_ctx, flow_options), **circuit_options)
71
84
  Trailblazer::Context(
72
- @filter.(original_ctx, **circuit_options),
85
+ @filter.(original_ctx, keyword_arguments: original_ctx.to_hash, **circuit_options),
73
86
  {},
74
87
  flow_options[:context_options]
75
88
  )
@@ -87,9 +100,21 @@ module Trailblazer
87
100
 
88
101
  def call(new_ctx, (original_ctx, flow_options), **circuit_options)
89
102
  original_ctx.merge(
90
- @filter.(new_ctx, **circuit_options)
103
+ call_filter(new_ctx, [original_ctx, flow_options], **circuit_options)
91
104
  )
92
105
  end
106
+
107
+ def call_filter(new_ctx, (original_ctx, flow_options), **circuit_options)
108
+ # Pass {inner_ctx, **inner_ctx}
109
+ @filter.(new_ctx, keyword_arguments: new_ctx.to_hash, **circuit_options)
110
+ end
111
+
112
+ class WithOuterContext < Unscoped
113
+ def call_filter(new_ctx, (original_ctx, flow_options), **circuit_options)
114
+ # Pass {inner_ctx, outer_ctx, **inner_ctx}
115
+ @filter.(new_ctx, original_ctx, keyword_arguments: new_ctx.to_hash, **circuit_options)
116
+ end
117
+ end
93
118
  end
94
119
  end
95
120
  end # VariableMapping
@@ -3,7 +3,7 @@ module Trailblazer
3
3
  module Activity
4
4
  module DSL
5
5
  module Linear
6
- VERSION = "0.3.5"
6
+ VERSION = "0.4.3"
7
7
  end
8
8
  end
9
9
  end
@@ -99,7 +99,7 @@ class Trailblazer::Activity
99
99
 
100
100
  # @private
101
101
  def find_in_range(range, target_color)
102
- target_seq_row = range.find { |seq_row| seq_row[0] == target_color }
102
+ _target_seq_row = range.find { |seq_row| seq_row[0] == target_color }
103
103
  end
104
104
  end # Search
105
105
 
@@ -152,7 +152,7 @@ class Trailblazer::Activity
152
152
  def Merge(old_seq, new_seq, end_id: "End.success") # DISCUSS: also Insert
153
153
  new_seq = strip_start_and_ends(new_seq, end_id: end_id)
154
154
 
155
- seq = Insert.Prepend(old_seq, new_seq, end_id)
155
+ _seq = Insert.Prepend(old_seq, new_seq, end_id)
156
156
  end
157
157
  def strip_start_and_ends(seq, end_id:) # TODO: introduce Merge namespace?
158
158
  cut_off_index = end_id.nil? ? seq.size : Insert.find_index(seq, end_id) # find the "first" end.
@@ -170,14 +170,14 @@ class Trailblazer::Activity
170
170
  new_row = Sequence.create_row(**options)
171
171
 
172
172
  # {sequence_insert} is usually a function such as {Linear::Insert::Append} and its arguments.
173
- seq = Sequence.insert_row(sequence, row: new_row, insert: sequence_insert)
173
+ _seq = Sequence.insert_row(sequence, row: new_row, insert: sequence_insert)
174
174
  end
175
175
 
176
176
  # Add one or several rows to the {sequence}.
177
177
  # This is usually called from DSL methods such as {step}.
178
178
  def apply_adds_from_dsl(sequence, sequence_insert:, adds:, **options)
179
179
  # This is the ADDS for the actual task.
180
- task_add = {row: Sequence.create_row(options), insert: sequence_insert} # Linear::Insert.method(:Prepend), end_id
180
+ task_add = {row: Sequence.create_row(**options), insert: sequence_insert} # Linear::Insert.method(:Prepend), end_id
181
181
 
182
182
  Sequence.apply_adds(sequence, [task_add] + adds)
183
183
  end
@@ -2,7 +2,7 @@ module Trailblazer
2
2
  class Activity
3
3
  def self.FastTrack(options)
4
4
  Class.new(FastTrack) do
5
- initialize!(Railway::DSL::State.new(FastTrack::DSL.OptionsForState(options)))
5
+ initialize!(Railway::DSL::State.new(**FastTrack::DSL.OptionsForState(**options)))
6
6
  end
7
7
  end
8
8
 
@@ -130,8 +130,6 @@ module Trailblazer
130
130
  sequence = Path::DSL.append_end(sequence, task: pass_fast_end, magnetic_to: :pass_fast, id: "End.pass_fast")
131
131
  end
132
132
 
133
-
134
-
135
133
  # This is slow and should be done only once at compile-time,
136
134
  # DISCUSS: maybe make this a function?
137
135
  # These are the normalizers for an {Activity}, to be injected into a State.
@@ -142,7 +140,7 @@ module Trailblazer
142
140
  )
143
141
 
144
142
  def self.OptionsForState(normalizers: Normalizers, **options)
145
- options = Railway::DSL.OptionsForState(options).
143
+ options = Railway::DSL.OptionsForState(**options).
146
144
  merge(normalizers: normalizers)
147
145
 
148
146
  initial_sequence = FastTrack::DSL.initial_sequence(**options)
@@ -167,7 +165,7 @@ module Trailblazer
167
165
  include Activity::DSL::Linear::Helper
168
166
  extend Activity::DSL::Linear::Strategy
169
167
 
170
- initialize!(Railway::DSL::State.new(DSL.OptionsForState()))
168
+ initialize!(Railway::DSL::State.new(**DSL.OptionsForState()))
171
169
 
172
170
  end # FastTrack
173
171
  end
@@ -17,7 +17,7 @@ module Trailblazer
17
17
  def start_sequence(track_name:)
18
18
  start_default = Activity::Start.new(semantic: :default)
19
19
  start_event = Linear::Sequence.create_row(task: start_default, id: "Start.default", magnetic_to: nil, wirings: [Linear::Search::Forward(unary_outputs[:success], track_name)])
20
- sequence = Linear::Sequence[start_event]
20
+ _sequence = Linear::Sequence[start_event]
21
21
  end
22
22
 
23
23
  # DISCUSS: still not sure this should sit here.
@@ -81,12 +81,27 @@ module Trailblazer
81
81
  }
82
82
  end
83
83
 
84
+ def normalize_duplications((ctx, flow_options), *)
85
+ return Right, [ctx, flow_options] if ctx[:replace]
86
+
87
+ signal, (ctx, flow_options) = raise_on_duplicate_id([ctx, flow_options])
88
+ signal, (ctx, flow_options) = clone_duplicate_activity([ctx, flow_options])
89
+
90
+ return signal, [ctx, flow_options]
91
+ end
92
+
84
93
  def raise_on_duplicate_id((ctx, flow_options), *)
85
- id, sequence, insert = ctx[:id], ctx[:sequence], ctx[:sequence_insert][0] # DISCUSS: should we use Replace here or rather the option(s)?
94
+ id, sequence = ctx[:id], ctx[:sequence]
95
+ raise "ID #{id} is already taken. Please specify an `:id`." if sequence.find { |row| row[3][:id] == id }
86
96
 
87
- if insert != Linear::Insert.method(:Replace)
88
- raise "ID #{id} is already taken. Please specify an `:id`." if sequence.find { |row| row[3][:id] == id }
89
- end
97
+ return Right, [ctx, flow_options]
98
+ end
99
+
100
+ def clone_duplicate_activity((ctx, flow_options), *)
101
+ return Right, [ctx, flow_options] unless ctx[:task].is_a?(Class)
102
+
103
+ task, sequence = ctx[:task], ctx[:sequence]
104
+ ctx = ctx.merge(task: task.clone) if sequence.find { |row| row[1] == task }
90
105
 
91
106
  return Right, [ctx, flow_options]
92
107
  end
@@ -104,12 +119,12 @@ module Trailblazer
104
119
  prepend_to_path(
105
120
  sequence,
106
121
 
107
- "path.outputs" => method(:merge_path_outputs),
108
- "path.connections" => method(:merge_path_connections),
109
- "path.sequence_insert" => method(:normalize_sequence_insert),
110
- "path.raise_on_duplicate_id" => method(:raise_on_duplicate_id),
111
- "path.magnetic_to" => method(:normalize_magnetic_to),
112
- "path.wirings" => Linear::Normalizer.method(:compile_wirings),
122
+ "path.outputs" => method(:merge_path_outputs),
123
+ "path.connections" => method(:merge_path_connections),
124
+ "path.sequence_insert" => method(:normalize_sequence_insert),
125
+ "path.normalize_duplications" => method(:normalize_duplications),
126
+ "path.magnetic_to" => method(:normalize_magnetic_to),
127
+ "path.wirings" => Linear::Normalizer.method(:compile_wirings),
113
128
  )
114
129
  end
115
130
 
@@ -121,7 +136,7 @@ module Trailblazer
121
136
  end
122
137
 
123
138
  def append_end(sequence, **options)
124
- sequence = Linear::DSL.insert_task(sequence, **append_end_options(options))
139
+ sequence = Linear::DSL.insert_task(sequence, **append_end_options(**options))
125
140
  end
126
141
 
127
142
  def append_end_options(task:, magnetic_to:, id:, append_to: "End.success")
@@ -171,7 +186,7 @@ module Trailblazer
171
186
  # Path() do ... end
172
187
  class State < Linear::State
173
188
  def step(*args)
174
- seq = Linear::Strategy.task_for!(self, :step, *args) # mutate @state
189
+ _seq = Linear::Strategy.task_for!(self, :step, *args) # mutate @state
175
190
  end
176
191
  end
177
192
 
@@ -180,12 +195,12 @@ module Trailblazer
180
195
  include DSL::Linear::Helper
181
196
  extend DSL::Linear::Strategy
182
197
 
183
- initialize!(Path::DSL::State.new(DSL.OptionsForState()))
198
+ initialize!(Path::DSL::State.new(**DSL.OptionsForState()))
184
199
  end # Path
185
200
 
186
201
  def self.Path(options)
187
202
  Class.new(Path) do
188
- initialize!(Path::DSL::State.new(Path::DSL.OptionsForState(options)))
203
+ initialize!(Path::DSL::State.new(**Path::DSL.OptionsForState(**options)))
189
204
  end
190
205
  end
191
206
  end
@@ -135,7 +135,7 @@ module Trailblazer
135
135
  )
136
136
 
137
137
  def self.OptionsForState(normalizers: Normalizers, failure_end: Activity::End.new(semantic: :failure), **options)
138
- options = Path::DSL.OptionsForState(options).
138
+ options = Path::DSL.OptionsForState(**options).
139
139
  merge(normalizers: normalizers, failure_end: failure_end)
140
140
 
141
141
  initial_sequence = Railway::DSL.initial_sequence(failure_end: failure_end, **options)
@@ -161,13 +161,13 @@ module Trailblazer
161
161
  include DSL::Linear::Helper
162
162
  extend DSL::Linear::Strategy
163
163
 
164
- initialize!(Railway::DSL::State.new(DSL.OptionsForState()))
164
+ initialize!(Railway::DSL::State.new(**DSL.OptionsForState()))
165
165
 
166
166
  end # Railway
167
167
 
168
168
  def self.Railway(options)
169
169
  Class.new(Railway) do
170
- initialize!(Railway::DSL::State.new(Railway::DSL.OptionsForState(options)))
170
+ initialize!(Railway::DSL::State.new(**Railway::DSL.OptionsForState(**options)))
171
171
  end
172
172
  end
173
173
  end
@@ -19,12 +19,12 @@ Gem::Specification.new do |spec|
19
19
  end
20
20
  spec.require_paths = ["lib"]
21
21
 
22
- spec.add_dependency "trailblazer-activity", ">= 0.11.3", "< 1.0.0"
22
+ spec.add_dependency "trailblazer-activity", ">= 0.12.2", "< 0.13.0"
23
23
 
24
24
  spec.add_development_dependency "bundler"
25
25
  spec.add_development_dependency "minitest", "~> 5.0"
26
26
  spec.add_development_dependency "rake"
27
- spec.add_development_dependency "trailblazer-developer", ">= 0.0.3"
27
+ spec.add_development_dependency "trailblazer-developer", ">= 0.0.21"
28
28
 
29
29
  spec.required_ruby_version = '>= 2.1.0'
30
30
  end
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: 0.3.5
4
+ version: 0.4.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nick Sutterer
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-17 00:00:00.000000000 Z
11
+ date: 2021-11-26 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.11.3
19
+ version: 0.12.2
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: 1.0.0
22
+ version: 0.13.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.11.3
29
+ version: 0.12.2
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: 1.0.0
32
+ version: 0.13.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: bundler
35
35
  requirement: !ruby/object:Gem::Requirement
@@ -78,14 +78,14 @@ dependencies:
78
78
  requirements:
79
79
  - - ">="
80
80
  - !ruby/object:Gem::Version
81
- version: 0.0.3
81
+ version: 0.0.21
82
82
  type: :development
83
83
  prerelease: false
84
84
  version_requirements: !ruby/object:Gem::Requirement
85
85
  requirements:
86
86
  - - ">="
87
87
  - !ruby/object:Gem::Version
88
- version: 0.0.3
88
+ version: 0.0.21
89
89
  description: Simple DSL to define Trailblazer activities with arbitrary wirings.
90
90
  email:
91
91
  - apotonick@gmail.com
@@ -93,8 +93,8 @@ executables: []
93
93
  extensions: []
94
94
  extra_rdoc_files: []
95
95
  files:
96
+ - ".github/workflows/ci.yml"
96
97
  - ".gitignore"
97
- - ".travis.yml"
98
98
  - CHANGES.md
99
99
  - DSL_IDEAS
100
100
  - Gemfile
@@ -118,7 +118,7 @@ homepage: http://trailblazer.to
118
118
  licenses:
119
119
  - LGPL-3.0
120
120
  metadata: {}
121
- post_install_message:
121
+ post_install_message:
122
122
  rdoc_options: []
123
123
  require_paths:
124
124
  - lib
@@ -133,8 +133,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
133
133
  - !ruby/object:Gem::Version
134
134
  version: '0'
135
135
  requirements: []
136
- rubygems_version: 3.0.8
137
- signing_key:
136
+ rubygems_version: 3.2.3
137
+ signing_key:
138
138
  specification_version: 4
139
139
  summary: Simple DSL to define Trailblazer activities.
140
140
  test_files: []
data/.travis.yml DELETED
@@ -1,8 +0,0 @@
1
- language: ruby
2
- rvm:
3
- #- ruby-head
4
- - 2.6.6
5
- - 2.5.1
6
- - 2.4.4
7
-
8
- cache: bundler