roast-ai 0.5.0 → 0.5.1
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/.ruby-version +1 -1
- data/Gemfile.lock +1 -1
- data/dsl/next_break.rb +5 -0
- data/exe/roast +1 -1
- data/lib/roast/dsl/cog/config.rb +1 -1
- data/lib/roast/dsl/cogs/cmd.rb +3 -0
- data/lib/roast/dsl/command_runner.rb +1 -1
- data/lib/roast/dsl/system_cogs/call.rb +3 -2
- data/lib/roast/dsl/system_cogs/map.rb +6 -0
- data/lib/roast/helpers/minitest_coverage_runner.rb +1 -1
- data/lib/roast/version.rb +1 -1
- data/lib/roast.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e19ea3373017e147359ddf4c1f6ccf340bd7d7ac50a870be68f78f15cf80b5d8
|
|
4
|
+
data.tar.gz: c6fb3bc056f2112ced9719aef312bb8ed2d2ccbd2eac6e44996ab329b36722b8
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: b8cf9c2e98c8475f64a4b81cb002ccd254fd483cf97fd718eb9a07952b2423965c7813ea212110819456793c37d412bbdd808ef35d3f176085768bde9ddce9e7
|
|
7
|
+
data.tar.gz: 0bf31300a5a3463211435ede98a8826a3dfcf8207198184aada65ce1f0e64efeb8ac78a1b4b3fa41dbfb03b7337f63076186c5bd02ff849ee789796e3b4060de
|
data/.ruby-version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
3.4.
|
|
1
|
+
3.4.7
|
data/Gemfile.lock
CHANGED
data/dsl/next_break.rb
CHANGED
data/exe/roast
CHANGED
data/lib/roast/dsl/cog/config.rb
CHANGED
data/lib/roast/dsl/cogs/cmd.rb
CHANGED
|
@@ -310,6 +310,9 @@ module Roast
|
|
|
310
310
|
stdout_handler: stdout_handler,
|
|
311
311
|
stderr_handler: stderr_handler,
|
|
312
312
|
)
|
|
313
|
+
if !status.success? && config.fail_on_error?
|
|
314
|
+
raise ControlFlow::FailCog, "Process exited with status code #{status.exitstatus}"
|
|
315
|
+
end
|
|
313
316
|
|
|
314
317
|
Output.new(stdout, stderr, status)
|
|
315
318
|
end
|
|
@@ -65,7 +65,7 @@ module Roast
|
|
|
65
65
|
stdin, stdout, stderr, wait_thread = Open3 #: as untyped
|
|
66
66
|
.popen3(
|
|
67
67
|
{ "PWD" => working_directory&.to_s }.compact,
|
|
68
|
-
*args,
|
|
68
|
+
*args.map(&:to_s),
|
|
69
69
|
{ chdir: working_directory }.compact,
|
|
70
70
|
)
|
|
71
71
|
stdin.puts stdin_content if stdin_content.present?
|
|
@@ -106,9 +106,10 @@ module Roast
|
|
|
106
106
|
em.prepare!
|
|
107
107
|
begin
|
|
108
108
|
em.run!
|
|
109
|
-
rescue ControlFlow::Break
|
|
109
|
+
rescue ControlFlow::Next, ControlFlow::Break
|
|
110
110
|
# treat `break!` like `next!` in a `call` invocation
|
|
111
|
-
#
|
|
111
|
+
# just end the execution early and return like normal
|
|
112
|
+
# TODO: maybe do something with the message passed to next! or break!
|
|
112
113
|
end
|
|
113
114
|
Output.new(em)
|
|
114
115
|
end
|
|
@@ -292,6 +292,9 @@ module Roast
|
|
|
292
292
|
ems << em = create_execution_manager_for_map_item(run, item, index + input.initial_index)
|
|
293
293
|
em.prepare!
|
|
294
294
|
em.run!
|
|
295
|
+
rescue ControlFlow::Next
|
|
296
|
+
# TODO: do something with the message passed to next!
|
|
297
|
+
# proceed to next iteration
|
|
295
298
|
rescue ControlFlow::Break
|
|
296
299
|
# TODO: do something with the message passed to break!
|
|
297
300
|
break
|
|
@@ -311,6 +314,9 @@ module Roast
|
|
|
311
314
|
ems[index] = em = create_execution_manager_for_map_item(run, item, index + input.initial_index)
|
|
312
315
|
em.prepare!
|
|
313
316
|
em.run!
|
|
317
|
+
rescue ControlFlow::Next
|
|
318
|
+
# TODO: do something with the message passed to next!
|
|
319
|
+
# proceed to next iteration
|
|
314
320
|
end
|
|
315
321
|
end #: Array[Async::Task]
|
|
316
322
|
|
|
@@ -7,7 +7,7 @@ require "minitest"
|
|
|
7
7
|
# Disable the built-in `at_exit` hook for Minitest before anything else
|
|
8
8
|
module Minitest
|
|
9
9
|
class << self
|
|
10
|
-
alias_method :
|
|
10
|
+
alias_method :original2_at_exit, :at_exit
|
|
11
11
|
def at_exit(*)
|
|
12
12
|
# Do nothing to prevent autorun hooks
|
|
13
13
|
end
|
data/lib/roast/version.rb
CHANGED
data/lib/roast.rb
CHANGED
|
@@ -83,7 +83,7 @@ module Roast
|
|
|
83
83
|
workflow_path, *files = paths
|
|
84
84
|
|
|
85
85
|
if options[:executor] == "dsl"
|
|
86
|
-
$stderr.puts "⚠️ WARNING: You are using Roast 1.0 feature preview. This syntax has not yet been officially released and should not be considered fully stable."
|
|
86
|
+
$stderr.puts "⚠️ WARNING: You are using Roast 1.0 feature preview. This syntax has not yet been officially released and should not be considered fully stable." if $stderr.tty?
|
|
87
87
|
targets, workflow_args, workflow_kwargs = parse_custom_workflow_args(files, ARGV)
|
|
88
88
|
targets.unshift(options[:target]) if options[:target]
|
|
89
89
|
workflow_params = Roast::DSL::WorkflowParams.new(targets, workflow_args, workflow_kwargs)
|