roast-ai 0.4.6 → 0.4.7
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.yaml +3 -1
- data/.gitignore +7 -0
- data/.rubocop.yml +14 -0
- data/CHANGELOG.md +5 -0
- data/Gemfile +2 -1
- data/Gemfile.lock +9 -1
- data/Rakefile +14 -4
- data/examples/available_tools_demo/workflow.yml +2 -2
- data/examples/cmd/basic_workflow.yml +0 -1
- data/examples/grading/js_test_runner +1 -1
- data/examples/grading/run_coverage.rb +1 -1
- data/examples/user_input/funny_name/workflow.yml +3 -4
- data/lib/roast/dsl/executor.rb +2 -1
- data/lib/roast/helpers/cmd_runner.rb +199 -0
- data/lib/roast/initializers.rb +1 -1
- data/lib/roast/tools/apply_diff.rb +1 -1
- data/lib/roast/tools/bash.rb +4 -4
- data/lib/roast/tools/cmd.rb +3 -5
- data/lib/roast/tools/coding_agent.rb +1 -1
- data/lib/roast/tools/grep.rb +6 -2
- data/lib/roast/tools/read_file.rb +2 -1
- data/lib/roast/tools/swarm.rb +2 -7
- data/lib/roast/tools.rb +10 -1
- data/lib/roast/version.rb +1 -1
- data/lib/roast/workflow/command_executor.rb +3 -3
- data/lib/roast/workflow/resource_resolver.rb +1 -1
- data/lib/roast/workflow/shell_script_step.rb +1 -1
- data/lib/roast.rb +1 -0
- data/rubocop/cop/roast/use_cmd_runner.rb +93 -0
- data/rubocop/cop/roast.rb +4 -0
- data/sorbet/rbi/gems/docile@1.4.1.rbi +377 -0
- data/sorbet/rbi/gems/lint_roller@1.1.0.rbi +233 -2
- data/sorbet/rbi/gems/racc@1.8.1.rbi +6 -4
- data/sorbet/rbi/gems/rainbow@3.1.1.rbi +396 -2
- data/sorbet/rbi/gems/regexp_parser@2.10.0.rbi +3788 -2
- data/sorbet/rbi/gems/rubocop-ast@1.45.1.rbi +7747 -2
- data/sorbet/rbi/gems/rubocop-sorbet@0.10.5.rbi +2386 -0
- data/sorbet/rbi/gems/rubocop@1.77.0.rbi +62813 -2
- data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +1311 -2
- data/sorbet/rbi/gems/simplecov-html@0.13.2.rbi +225 -0
- data/sorbet/rbi/gems/simplecov@0.22.0.rbi +2259 -0
- data/sorbet/rbi/gems/simplecov_json_formatter@0.1.4.rbi +9 -0
- data/sorbet/rbi/gems/unicode-display_width@3.1.4.rbi +125 -2
- data/sorbet/rbi/gems/unicode-emoji@4.0.4.rbi +244 -2
- data/sorbet/tapioca/require.rb +2 -1
- metadata +9 -2
- data/lib/roast/helpers/timeout_handler.rb +0 -89
@@ -0,0 +1,93 @@
|
|
1
|
+
# typed: false
|
2
|
+
# frozen_string_literal: true
|
3
|
+
|
4
|
+
module RuboCop
|
5
|
+
module Cop
|
6
|
+
module Roast
|
7
|
+
# This cop suggests using CmdRunner instead of other command execution methods
|
8
|
+
#
|
9
|
+
# @example
|
10
|
+
# # bad
|
11
|
+
# `ls -la`
|
12
|
+
# %x(ls -la)
|
13
|
+
# system("ls -la")
|
14
|
+
# Open3.capture3("ls -la")
|
15
|
+
# spawn("ls -la")
|
16
|
+
# exec("ls -la")
|
17
|
+
#
|
18
|
+
# # good
|
19
|
+
# CmdRunner.capture3("ls -la")
|
20
|
+
# CmdRunner.capture2e("ls -la")
|
21
|
+
class UseCmdRunner < RuboCop::Cop::Base
|
22
|
+
MSG = "Use `CmdRunner` instead of `%<method>s` for command execution to ensure proper process tracking and cleanup"
|
23
|
+
|
24
|
+
# Pattern for backtick commands
|
25
|
+
def_node_matcher :backtick_command?, <<~PATTERN
|
26
|
+
(xstr ...)
|
27
|
+
PATTERN
|
28
|
+
|
29
|
+
# Pattern for %x() commands
|
30
|
+
def_node_matcher :percent_x_command?, <<~PATTERN
|
31
|
+
(xstr ...)
|
32
|
+
PATTERN
|
33
|
+
|
34
|
+
# Pattern for system() calls
|
35
|
+
def_node_matcher :system_call?, <<~PATTERN
|
36
|
+
(send nil? :system ...)
|
37
|
+
PATTERN
|
38
|
+
|
39
|
+
# Pattern for spawn() calls
|
40
|
+
def_node_matcher :spawn_call?, <<~PATTERN
|
41
|
+
(send nil? :spawn ...)
|
42
|
+
PATTERN
|
43
|
+
|
44
|
+
# Pattern for exec() calls
|
45
|
+
def_node_matcher :exec_call?, <<~PATTERN
|
46
|
+
(send nil? :exec ...)
|
47
|
+
PATTERN
|
48
|
+
|
49
|
+
# Pattern for Open3 methods
|
50
|
+
def_node_matcher :open3_call?, <<~PATTERN
|
51
|
+
(send (const nil? :Open3) {:capture2 :capture2e :capture3 :popen2 :popen2e :popen3} ...)
|
52
|
+
PATTERN
|
53
|
+
|
54
|
+
# Pattern for Process.spawn
|
55
|
+
def_node_matcher :process_spawn?, <<~PATTERN
|
56
|
+
(send (const nil? :Process) :spawn ...)
|
57
|
+
PATTERN
|
58
|
+
|
59
|
+
# Pattern for Kernel methods
|
60
|
+
def_node_matcher :kernel_system?, <<~PATTERN
|
61
|
+
(send (const nil? :Kernel) {:system :spawn :exec} ...)
|
62
|
+
PATTERN
|
63
|
+
|
64
|
+
# Pattern for IO.popen
|
65
|
+
def_node_matcher :io_popen?, <<~PATTERN
|
66
|
+
(send (const nil? :IO) :popen ...)
|
67
|
+
PATTERN
|
68
|
+
|
69
|
+
def on_xstr(node)
|
70
|
+
add_offense(node, message: format(MSG, method: "backticks"))
|
71
|
+
end
|
72
|
+
|
73
|
+
def on_send(node)
|
74
|
+
if system_call?(node) || kernel_system?(node)
|
75
|
+
method_name = node.method_name
|
76
|
+
add_offense(node, message: format(MSG, method: method_name))
|
77
|
+
elsif spawn_call?(node)
|
78
|
+
add_offense(node, message: format(MSG, method: "spawn"))
|
79
|
+
elsif exec_call?(node)
|
80
|
+
add_offense(node, message: format(MSG, method: "exec"))
|
81
|
+
elsif open3_call?(node)
|
82
|
+
method_name = "Open3.#{node.method_name}"
|
83
|
+
add_offense(node, message: format(MSG, method: method_name))
|
84
|
+
elsif process_spawn?(node)
|
85
|
+
add_offense(node, message: format(MSG, method: "Process.spawn"))
|
86
|
+
elsif io_popen?(node)
|
87
|
+
add_offense(node, message: format(MSG, method: "IO.popen"))
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
@@ -0,0 +1,377 @@
|
|
1
|
+
# typed: true
|
2
|
+
|
3
|
+
# DO NOT EDIT MANUALLY
|
4
|
+
# This is an autogenerated file for types exported from the `docile` gem.
|
5
|
+
# Please instead update this file by running `bin/tapioca gem docile`.
|
6
|
+
|
7
|
+
|
8
|
+
# Docile keeps your Ruby DSLs tame and well-behaved.
|
9
|
+
#
|
10
|
+
# source://docile//lib/docile/version.rb#3
|
11
|
+
module Docile
|
12
|
+
extend ::Docile::Execution
|
13
|
+
|
14
|
+
private
|
15
|
+
|
16
|
+
# Execute a block in the context of an object whose methods represent the
|
17
|
+
# commands in a DSL.
|
18
|
+
#
|
19
|
+
# Use this method to execute an *imperative* DSL, which means that:
|
20
|
+
#
|
21
|
+
# 1. Each command mutates the state of the DSL context object
|
22
|
+
# 2. The return value of each command is ignored
|
23
|
+
# 3. The final return value is the original context object
|
24
|
+
#
|
25
|
+
# @example Use a String as a DSL
|
26
|
+
# Docile.dsl_eval("Hello, world!") do
|
27
|
+
# reverse!
|
28
|
+
# upcase!
|
29
|
+
# end
|
30
|
+
# #=> "!DLROW ,OLLEH"
|
31
|
+
# @example Use an Array as a DSL
|
32
|
+
# Docile.dsl_eval([]) do
|
33
|
+
# push 1
|
34
|
+
# push 2
|
35
|
+
# pop
|
36
|
+
# push 3
|
37
|
+
# end
|
38
|
+
# #=> [1, 3]
|
39
|
+
# @note Use with an *imperative* DSL (commands modify the context object)
|
40
|
+
# @param dsl [Object] context object whose methods make up the DSL
|
41
|
+
# @param args [Array] arguments to be passed to the block
|
42
|
+
# @param block [Proc] the block of DSL commands to be executed against the
|
43
|
+
# `dsl` context object
|
44
|
+
# @return [Object] the `dsl` context object after executing the block
|
45
|
+
#
|
46
|
+
# source://docile//lib/docile.rb#45
|
47
|
+
def dsl_eval(dsl, *args, **_arg2, &block); end
|
48
|
+
|
49
|
+
# Execute a block in the context of an immutable object whose methods,
|
50
|
+
# and the methods of their return values, represent the commands in a DSL.
|
51
|
+
#
|
52
|
+
# Use this method to execute a *functional* DSL, which means that:
|
53
|
+
#
|
54
|
+
# 1. The original DSL context object is never mutated
|
55
|
+
# 2. Each command returns the next DSL context object
|
56
|
+
# 3. The final return value is the value returned by the last command
|
57
|
+
#
|
58
|
+
# @example Use a frozen String as a DSL
|
59
|
+
# Docile.dsl_eval_immutable("I'm immutable!".freeze) do
|
60
|
+
# reverse
|
61
|
+
# upcase
|
62
|
+
# end
|
63
|
+
# #=> "!ELBATUMMI M'I"
|
64
|
+
# @example Use a Float as a DSL
|
65
|
+
# Docile.dsl_eval_immutable(84.5) do
|
66
|
+
# fdiv(2)
|
67
|
+
# floor
|
68
|
+
# end
|
69
|
+
# #=> 42
|
70
|
+
# @note Use with a *functional* DSL (commands return successor
|
71
|
+
# context objects)
|
72
|
+
# @param dsl [Object] immutable context object whose methods make up the
|
73
|
+
# initial DSL
|
74
|
+
# @param args [Array] arguments to be passed to the block
|
75
|
+
# @param block [Proc] the block of DSL commands to be executed against the
|
76
|
+
# `dsl` context object and successor return values
|
77
|
+
# @return [Object] the return value of the final command in the block
|
78
|
+
#
|
79
|
+
# source://docile//lib/docile.rb#128
|
80
|
+
def dsl_eval_immutable(dsl, *args, **_arg2, &block); end
|
81
|
+
|
82
|
+
# Execute a block in the context of an object whose methods represent the
|
83
|
+
# commands in a DSL, and return *the block's return value*.
|
84
|
+
#
|
85
|
+
# Use this method to execute an *imperative* DSL, which means that:
|
86
|
+
#
|
87
|
+
# 1. Each command mutates the state of the DSL context object
|
88
|
+
# 2. The return value of each command is ignored
|
89
|
+
# 3. The final return value is the original context object
|
90
|
+
#
|
91
|
+
# @example Use a String as a DSL
|
92
|
+
# Docile.dsl_eval_with_block_return("Hello, world!") do
|
93
|
+
# reverse!
|
94
|
+
# upcase!
|
95
|
+
# first
|
96
|
+
# end
|
97
|
+
# #=> "!"
|
98
|
+
# @example Use an Array as a DSL
|
99
|
+
# Docile.dsl_eval_with_block_return([]) do
|
100
|
+
# push "a"
|
101
|
+
# push "b"
|
102
|
+
# pop
|
103
|
+
# push "c"
|
104
|
+
# length
|
105
|
+
# end
|
106
|
+
# #=> 2
|
107
|
+
# @note Use with an *imperative* DSL (commands modify the context object)
|
108
|
+
# @param dsl [Object] context object whose methods make up the DSL
|
109
|
+
# @param args [Array] arguments to be passed to the block
|
110
|
+
# @param block [Proc] the block of DSL commands to be executed against the
|
111
|
+
# `dsl` context object
|
112
|
+
# @return [Object] the return value from executing the block
|
113
|
+
#
|
114
|
+
# source://docile//lib/docile.rb#87
|
115
|
+
def dsl_eval_with_block_return(dsl, *args, **_arg2, &block); end
|
116
|
+
|
117
|
+
class << self
|
118
|
+
# Execute a block in the context of an object whose methods represent the
|
119
|
+
# commands in a DSL.
|
120
|
+
#
|
121
|
+
# Use this method to execute an *imperative* DSL, which means that:
|
122
|
+
#
|
123
|
+
# 1. Each command mutates the state of the DSL context object
|
124
|
+
# 2. The return value of each command is ignored
|
125
|
+
# 3. The final return value is the original context object
|
126
|
+
#
|
127
|
+
# @example Use a String as a DSL
|
128
|
+
# Docile.dsl_eval("Hello, world!") do
|
129
|
+
# reverse!
|
130
|
+
# upcase!
|
131
|
+
# end
|
132
|
+
# #=> "!DLROW ,OLLEH"
|
133
|
+
# @example Use an Array as a DSL
|
134
|
+
# Docile.dsl_eval([]) do
|
135
|
+
# push 1
|
136
|
+
# push 2
|
137
|
+
# pop
|
138
|
+
# push 3
|
139
|
+
# end
|
140
|
+
# #=> [1, 3]
|
141
|
+
# @note Use with an *imperative* DSL (commands modify the context object)
|
142
|
+
# @param dsl [Object] context object whose methods make up the DSL
|
143
|
+
# @param args [Array] arguments to be passed to the block
|
144
|
+
# @param block [Proc] the block of DSL commands to be executed against the
|
145
|
+
# `dsl` context object
|
146
|
+
# @return [Object] the `dsl` context object after executing the block
|
147
|
+
#
|
148
|
+
# source://docile//lib/docile.rb#45
|
149
|
+
def dsl_eval(dsl, *args, **_arg2, &block); end
|
150
|
+
|
151
|
+
# Execute a block in the context of an immutable object whose methods,
|
152
|
+
# and the methods of their return values, represent the commands in a DSL.
|
153
|
+
#
|
154
|
+
# Use this method to execute a *functional* DSL, which means that:
|
155
|
+
#
|
156
|
+
# 1. The original DSL context object is never mutated
|
157
|
+
# 2. Each command returns the next DSL context object
|
158
|
+
# 3. The final return value is the value returned by the last command
|
159
|
+
#
|
160
|
+
# @example Use a frozen String as a DSL
|
161
|
+
# Docile.dsl_eval_immutable("I'm immutable!".freeze) do
|
162
|
+
# reverse
|
163
|
+
# upcase
|
164
|
+
# end
|
165
|
+
# #=> "!ELBATUMMI M'I"
|
166
|
+
# @example Use a Float as a DSL
|
167
|
+
# Docile.dsl_eval_immutable(84.5) do
|
168
|
+
# fdiv(2)
|
169
|
+
# floor
|
170
|
+
# end
|
171
|
+
# #=> 42
|
172
|
+
# @note Use with a *functional* DSL (commands return successor
|
173
|
+
# context objects)
|
174
|
+
# @param dsl [Object] immutable context object whose methods make up the
|
175
|
+
# initial DSL
|
176
|
+
# @param args [Array] arguments to be passed to the block
|
177
|
+
# @param block [Proc] the block of DSL commands to be executed against the
|
178
|
+
# `dsl` context object and successor return values
|
179
|
+
# @return [Object] the return value of the final command in the block
|
180
|
+
#
|
181
|
+
# source://docile//lib/docile.rb#128
|
182
|
+
def dsl_eval_immutable(dsl, *args, **_arg2, &block); end
|
183
|
+
|
184
|
+
# Execute a block in the context of an object whose methods represent the
|
185
|
+
# commands in a DSL, and return *the block's return value*.
|
186
|
+
#
|
187
|
+
# Use this method to execute an *imperative* DSL, which means that:
|
188
|
+
#
|
189
|
+
# 1. Each command mutates the state of the DSL context object
|
190
|
+
# 2. The return value of each command is ignored
|
191
|
+
# 3. The final return value is the original context object
|
192
|
+
#
|
193
|
+
# @example Use a String as a DSL
|
194
|
+
# Docile.dsl_eval_with_block_return("Hello, world!") do
|
195
|
+
# reverse!
|
196
|
+
# upcase!
|
197
|
+
# first
|
198
|
+
# end
|
199
|
+
# #=> "!"
|
200
|
+
# @example Use an Array as a DSL
|
201
|
+
# Docile.dsl_eval_with_block_return([]) do
|
202
|
+
# push "a"
|
203
|
+
# push "b"
|
204
|
+
# pop
|
205
|
+
# push "c"
|
206
|
+
# length
|
207
|
+
# end
|
208
|
+
# #=> 2
|
209
|
+
# @note Use with an *imperative* DSL (commands modify the context object)
|
210
|
+
# @param dsl [Object] context object whose methods make up the DSL
|
211
|
+
# @param args [Array] arguments to be passed to the block
|
212
|
+
# @param block [Proc] the block of DSL commands to be executed against the
|
213
|
+
# `dsl` context object
|
214
|
+
# @return [Object] the return value from executing the block
|
215
|
+
#
|
216
|
+
# source://docile//lib/docile.rb#87
|
217
|
+
def dsl_eval_with_block_return(dsl, *args, **_arg2, &block); end
|
218
|
+
end
|
219
|
+
end
|
220
|
+
|
221
|
+
# This is used to remove entries pointing to Docile's source files
|
222
|
+
# from {Exception#backtrace} and {Exception#backtrace_locations}.
|
223
|
+
#
|
224
|
+
# If {NoMethodError} is caught then the exception object will be extended
|
225
|
+
# by this module to add filter functionalities.
|
226
|
+
#
|
227
|
+
# @api private
|
228
|
+
#
|
229
|
+
# source://docile//lib/docile/backtrace_filter.rb#11
|
230
|
+
module Docile::BacktraceFilter
|
231
|
+
# @api private
|
232
|
+
#
|
233
|
+
# source://docile//lib/docile/backtrace_filter.rb#14
|
234
|
+
def backtrace; end
|
235
|
+
|
236
|
+
# @api private
|
237
|
+
#
|
238
|
+
# source://docile//lib/docile/backtrace_filter.rb#19
|
239
|
+
def backtrace_locations; end
|
240
|
+
end
|
241
|
+
|
242
|
+
# @api private
|
243
|
+
#
|
244
|
+
# source://docile//lib/docile/backtrace_filter.rb#12
|
245
|
+
Docile::BacktraceFilter::FILTER_PATTERN = T.let(T.unsafe(nil), Regexp)
|
246
|
+
|
247
|
+
# Operates in the same manner as {FallbackContextProxy}, but replacing
|
248
|
+
# the primary `receiver` object with the result of each proxied method.
|
249
|
+
#
|
250
|
+
# This is useful for implementing DSL evaluation for immutable context
|
251
|
+
# objects.
|
252
|
+
#
|
253
|
+
#
|
254
|
+
# @api private
|
255
|
+
# @see Docile.dsl_eval_immutable
|
256
|
+
#
|
257
|
+
# source://docile//lib/docile/chaining_fallback_context_proxy.rb#17
|
258
|
+
class Docile::ChainingFallbackContextProxy < ::Docile::FallbackContextProxy
|
259
|
+
# Proxy methods as in {FallbackContextProxy#method_missing}, replacing
|
260
|
+
# `receiver` with the returned value.
|
261
|
+
#
|
262
|
+
# @api private
|
263
|
+
#
|
264
|
+
# source://docile//lib/docile/chaining_fallback_context_proxy.rb#20
|
265
|
+
def method_missing(method, *args, **_arg2, &block); end
|
266
|
+
end
|
267
|
+
|
268
|
+
# A namespace for functions relating to the execution of a block against a
|
269
|
+
# proxy object.
|
270
|
+
#
|
271
|
+
# @api private
|
272
|
+
#
|
273
|
+
# source://docile//lib/docile/execution.rb#8
|
274
|
+
module Docile::Execution
|
275
|
+
private
|
276
|
+
|
277
|
+
# Execute a block in the context of an object whose methods represent the
|
278
|
+
# commands in a DSL, using a specific proxy class.
|
279
|
+
#
|
280
|
+
# @api private
|
281
|
+
# @param dsl [Object] context object whose methods make up the
|
282
|
+
# (initial) DSL
|
283
|
+
# @param proxy_type [FallbackContextProxy, ChainingFallbackContextProxy] which class to instantiate as proxy context
|
284
|
+
# @param args [Array] arguments to be passed to the block
|
285
|
+
# @param block [Proc] the block of DSL commands to be executed
|
286
|
+
# @return [Object] the return value of the block
|
287
|
+
#
|
288
|
+
# source://docile//lib/docile/execution.rb#19
|
289
|
+
def exec_in_proxy_context(dsl, proxy_type, *args, **_arg3, &block); end
|
290
|
+
|
291
|
+
class << self
|
292
|
+
# Execute a block in the context of an object whose methods represent the
|
293
|
+
# commands in a DSL, using a specific proxy class.
|
294
|
+
#
|
295
|
+
# @api private
|
296
|
+
# @param dsl [Object] context object whose methods make up the
|
297
|
+
# (initial) DSL
|
298
|
+
# @param proxy_type [FallbackContextProxy, ChainingFallbackContextProxy] which class to instantiate as proxy context
|
299
|
+
# @param args [Array] arguments to be passed to the block
|
300
|
+
# @param block [Proc] the block of DSL commands to be executed
|
301
|
+
# @return [Object] the return value of the block
|
302
|
+
#
|
303
|
+
# source://docile//lib/docile/execution.rb#19
|
304
|
+
def exec_in_proxy_context(dsl, proxy_type, *args, **_arg3, &block); end
|
305
|
+
end
|
306
|
+
end
|
307
|
+
|
308
|
+
# A proxy object with a primary receiver as well as a secondary
|
309
|
+
# fallback receiver.
|
310
|
+
#
|
311
|
+
# Will attempt to forward all method calls first to the primary receiver,
|
312
|
+
# and then to the fallback receiver if the primary does not handle that
|
313
|
+
# method.
|
314
|
+
#
|
315
|
+
# This is useful for implementing DSL evaluation in the context of an object.
|
316
|
+
#
|
317
|
+
#
|
318
|
+
# @api private
|
319
|
+
# @see Docile.dsl_eval
|
320
|
+
#
|
321
|
+
# source://docile//lib/docile/fallback_context_proxy.rb#20
|
322
|
+
class Docile::FallbackContextProxy
|
323
|
+
# @api private
|
324
|
+
# @param receiver [Object] the primary proxy target to which all methods
|
325
|
+
# initially will be forwarded
|
326
|
+
# @param fallback [Object] the fallback proxy target to which any methods
|
327
|
+
# not handled by `receiver` will be forwarded
|
328
|
+
# @return [FallbackContextProxy] a new instance of FallbackContextProxy
|
329
|
+
#
|
330
|
+
# source://docile//lib/docile/fallback_context_proxy.rb#46
|
331
|
+
def initialize(receiver, fallback); end
|
332
|
+
|
333
|
+
# @api private
|
334
|
+
# @return [Array<Symbol>] Instance variable names, excluding
|
335
|
+
# {NON_PROXIED_INSTANCE_VARIABLES}
|
336
|
+
#
|
337
|
+
# source://docile//lib/docile/fallback_context_proxy.rb#85
|
338
|
+
def instance_variables; end
|
339
|
+
|
340
|
+
# Proxy all methods, excluding {NON_PROXIED_METHODS}, first to `receiver`
|
341
|
+
# and then to `fallback` if not found.
|
342
|
+
#
|
343
|
+
# @api private
|
344
|
+
#
|
345
|
+
# source://docile//lib/docile/fallback_context_proxy.rb#91
|
346
|
+
def method_missing(method, *args, **_arg2, &block); end
|
347
|
+
end
|
348
|
+
|
349
|
+
# The set of methods which will **not** fallback from the block's context
|
350
|
+
# to the dsl object.
|
351
|
+
#
|
352
|
+
# @api private
|
353
|
+
#
|
354
|
+
# source://docile//lib/docile/fallback_context_proxy.rb#30
|
355
|
+
Docile::FallbackContextProxy::NON_FALLBACK_METHODS = T.let(T.unsafe(nil), Set)
|
356
|
+
|
357
|
+
# The set of instance variables which are local to this object and hidden.
|
358
|
+
# All other instance variables will be copied in and out of this object
|
359
|
+
# from the scope in which this proxy was created.
|
360
|
+
#
|
361
|
+
# @api private
|
362
|
+
#
|
363
|
+
# source://docile//lib/docile/fallback_context_proxy.rb#35
|
364
|
+
Docile::FallbackContextProxy::NON_PROXIED_INSTANCE_VARIABLES = T.let(T.unsafe(nil), Set)
|
365
|
+
|
366
|
+
# The set of methods which will **not** be proxied, but instead answered
|
367
|
+
# by this object directly.
|
368
|
+
#
|
369
|
+
# @api private
|
370
|
+
#
|
371
|
+
# source://docile//lib/docile/fallback_context_proxy.rb#23
|
372
|
+
Docile::FallbackContextProxy::NON_PROXIED_METHODS = T.let(T.unsafe(nil), Set)
|
373
|
+
|
374
|
+
# The current version of this library
|
375
|
+
#
|
376
|
+
# source://docile//lib/docile/version.rb#5
|
377
|
+
Docile::VERSION = T.let(T.unsafe(nil), String)
|
@@ -5,5 +5,236 @@
|
|
5
5
|
# Please instead update this file by running `bin/tapioca gem lint_roller`.
|
6
6
|
|
7
7
|
|
8
|
-
#
|
9
|
-
|
8
|
+
# source://lint_roller//lib/lint_roller/context.rb#1
|
9
|
+
module LintRoller; end
|
10
|
+
|
11
|
+
# source://lint_roller//lib/lint_roller/about.rb#2
|
12
|
+
class LintRoller::About < ::Struct
|
13
|
+
# Returns the value of attribute description
|
14
|
+
#
|
15
|
+
# @return [Object] the current value of description
|
16
|
+
def description; end
|
17
|
+
|
18
|
+
# Sets the attribute description
|
19
|
+
#
|
20
|
+
# @param value [Object] the value to set the attribute description to.
|
21
|
+
# @return [Object] the newly set value
|
22
|
+
def description=(_); end
|
23
|
+
|
24
|
+
# Returns the value of attribute homepage
|
25
|
+
#
|
26
|
+
# @return [Object] the current value of homepage
|
27
|
+
def homepage; end
|
28
|
+
|
29
|
+
# Sets the attribute homepage
|
30
|
+
#
|
31
|
+
# @param value [Object] the value to set the attribute homepage to.
|
32
|
+
# @return [Object] the newly set value
|
33
|
+
def homepage=(_); end
|
34
|
+
|
35
|
+
# Returns the value of attribute name
|
36
|
+
#
|
37
|
+
# @return [Object] the current value of name
|
38
|
+
def name; end
|
39
|
+
|
40
|
+
# Sets the attribute name
|
41
|
+
#
|
42
|
+
# @param value [Object] the value to set the attribute name to.
|
43
|
+
# @return [Object] the newly set value
|
44
|
+
def name=(_); end
|
45
|
+
|
46
|
+
# Returns the value of attribute version
|
47
|
+
#
|
48
|
+
# @return [Object] the current value of version
|
49
|
+
def version; end
|
50
|
+
|
51
|
+
# Sets the attribute version
|
52
|
+
#
|
53
|
+
# @param value [Object] the value to set the attribute version to.
|
54
|
+
# @return [Object] the newly set value
|
55
|
+
def version=(_); end
|
56
|
+
|
57
|
+
class << self
|
58
|
+
def [](*_arg0); end
|
59
|
+
def inspect; end
|
60
|
+
def keyword_init?; end
|
61
|
+
def members; end
|
62
|
+
def new(*_arg0); end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
# source://lint_roller//lib/lint_roller/context.rb#2
|
67
|
+
class LintRoller::Context < ::Struct
|
68
|
+
# Returns the value of attribute engine
|
69
|
+
#
|
70
|
+
# @return [Object] the current value of engine
|
71
|
+
def engine; end
|
72
|
+
|
73
|
+
# Sets the attribute engine
|
74
|
+
#
|
75
|
+
# @param value [Object] the value to set the attribute engine to.
|
76
|
+
# @return [Object] the newly set value
|
77
|
+
def engine=(_); end
|
78
|
+
|
79
|
+
# Returns the value of attribute engine_version
|
80
|
+
#
|
81
|
+
# @return [Object] the current value of engine_version
|
82
|
+
def engine_version; end
|
83
|
+
|
84
|
+
# Sets the attribute engine_version
|
85
|
+
#
|
86
|
+
# @param value [Object] the value to set the attribute engine_version to.
|
87
|
+
# @return [Object] the newly set value
|
88
|
+
def engine_version=(_); end
|
89
|
+
|
90
|
+
# Returns the value of attribute rule_format
|
91
|
+
#
|
92
|
+
# @return [Object] the current value of rule_format
|
93
|
+
def rule_format; end
|
94
|
+
|
95
|
+
# Sets the attribute rule_format
|
96
|
+
#
|
97
|
+
# @param value [Object] the value to set the attribute rule_format to.
|
98
|
+
# @return [Object] the newly set value
|
99
|
+
def rule_format=(_); end
|
100
|
+
|
101
|
+
# Returns the value of attribute runner
|
102
|
+
#
|
103
|
+
# @return [Object] the current value of runner
|
104
|
+
def runner; end
|
105
|
+
|
106
|
+
# Sets the attribute runner
|
107
|
+
#
|
108
|
+
# @param value [Object] the value to set the attribute runner to.
|
109
|
+
# @return [Object] the newly set value
|
110
|
+
def runner=(_); end
|
111
|
+
|
112
|
+
# Returns the value of attribute runner_version
|
113
|
+
#
|
114
|
+
# @return [Object] the current value of runner_version
|
115
|
+
def runner_version; end
|
116
|
+
|
117
|
+
# Sets the attribute runner_version
|
118
|
+
#
|
119
|
+
# @param value [Object] the value to set the attribute runner_version to.
|
120
|
+
# @return [Object] the newly set value
|
121
|
+
def runner_version=(_); end
|
122
|
+
|
123
|
+
# Returns the value of attribute target_ruby_version
|
124
|
+
#
|
125
|
+
# @return [Object] the current value of target_ruby_version
|
126
|
+
def target_ruby_version; end
|
127
|
+
|
128
|
+
# Sets the attribute target_ruby_version
|
129
|
+
#
|
130
|
+
# @param value [Object] the value to set the attribute target_ruby_version to.
|
131
|
+
# @return [Object] the newly set value
|
132
|
+
def target_ruby_version=(_); end
|
133
|
+
|
134
|
+
class << self
|
135
|
+
def [](*_arg0); end
|
136
|
+
def inspect; end
|
137
|
+
def keyword_init?; end
|
138
|
+
def members; end
|
139
|
+
def new(*_arg0); end
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
143
|
+
# source://lint_roller//lib/lint_roller/error.rb#2
|
144
|
+
class LintRoller::Error < ::StandardError; end
|
145
|
+
|
146
|
+
# source://lint_roller//lib/lint_roller/plugin.rb#2
|
147
|
+
class LintRoller::Plugin
|
148
|
+
# `config' is a Hash of options passed to the plugin by the user
|
149
|
+
#
|
150
|
+
# @return [Plugin] a new instance of Plugin
|
151
|
+
#
|
152
|
+
# source://lint_roller//lib/lint_roller/plugin.rb#4
|
153
|
+
def initialize(config = T.unsafe(nil)); end
|
154
|
+
|
155
|
+
# @raise [Error]
|
156
|
+
#
|
157
|
+
# source://lint_roller//lib/lint_roller/plugin.rb#8
|
158
|
+
def about; end
|
159
|
+
|
160
|
+
# `context' is an instance of LintRoller::Context provided by the runner
|
161
|
+
#
|
162
|
+
# @raise [Error]
|
163
|
+
#
|
164
|
+
# source://lint_roller//lib/lint_roller/plugin.rb#18
|
165
|
+
def rules(context); end
|
166
|
+
|
167
|
+
# `context' is an instance of LintRoller::Context provided by the runner
|
168
|
+
#
|
169
|
+
# @return [Boolean]
|
170
|
+
#
|
171
|
+
# source://lint_roller//lib/lint_roller/plugin.rb#13
|
172
|
+
def supported?(context); end
|
173
|
+
end
|
174
|
+
|
175
|
+
# source://lint_roller//lib/lint_roller/rules.rb#2
|
176
|
+
class LintRoller::Rules < ::Struct
|
177
|
+
# Returns the value of attribute config_format
|
178
|
+
#
|
179
|
+
# @return [Object] the current value of config_format
|
180
|
+
def config_format; end
|
181
|
+
|
182
|
+
# Sets the attribute config_format
|
183
|
+
#
|
184
|
+
# @param value [Object] the value to set the attribute config_format to.
|
185
|
+
# @return [Object] the newly set value
|
186
|
+
def config_format=(_); end
|
187
|
+
|
188
|
+
# Returns the value of attribute error
|
189
|
+
#
|
190
|
+
# @return [Object] the current value of error
|
191
|
+
def error; end
|
192
|
+
|
193
|
+
# Sets the attribute error
|
194
|
+
#
|
195
|
+
# @param value [Object] the value to set the attribute error to.
|
196
|
+
# @return [Object] the newly set value
|
197
|
+
def error=(_); end
|
198
|
+
|
199
|
+
# Returns the value of attribute type
|
200
|
+
#
|
201
|
+
# @return [Object] the current value of type
|
202
|
+
def type; end
|
203
|
+
|
204
|
+
# Sets the attribute type
|
205
|
+
#
|
206
|
+
# @param value [Object] the value to set the attribute type to.
|
207
|
+
# @return [Object] the newly set value
|
208
|
+
def type=(_); end
|
209
|
+
|
210
|
+
# Returns the value of attribute value
|
211
|
+
#
|
212
|
+
# @return [Object] the current value of value
|
213
|
+
def value; end
|
214
|
+
|
215
|
+
# Sets the attribute value
|
216
|
+
#
|
217
|
+
# @param value [Object] the value to set the attribute value to.
|
218
|
+
# @return [Object] the newly set value
|
219
|
+
def value=(_); end
|
220
|
+
|
221
|
+
class << self
|
222
|
+
def [](*_arg0); end
|
223
|
+
def inspect; end
|
224
|
+
def keyword_init?; end
|
225
|
+
def members; end
|
226
|
+
def new(*_arg0); end
|
227
|
+
end
|
228
|
+
end
|
229
|
+
|
230
|
+
# source://lint_roller//lib/lint_roller/support/merges_upstream_metadata.rb#2
|
231
|
+
module LintRoller::Support; end
|
232
|
+
|
233
|
+
# source://lint_roller//lib/lint_roller/support/merges_upstream_metadata.rb#3
|
234
|
+
class LintRoller::Support::MergesUpstreamMetadata
|
235
|
+
# source://lint_roller//lib/lint_roller/support/merges_upstream_metadata.rb#4
|
236
|
+
def merge(plugin_yaml, upstream_yaml); end
|
237
|
+
end
|
238
|
+
|
239
|
+
# source://lint_roller//lib/lint_roller/version.rb#2
|
240
|
+
LintRoller::VERSION = T.let(T.unsafe(nil), String)
|