roast-ai 0.4.4 → 0.4.6
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/CODEOWNERS +2 -0
- data/.github/workflows/ci.yaml +1 -0
- data/.gitignore +0 -26
- data/.rubocop.yml +13 -0
- data/.rubocop_todo.yml +21 -0
- data/CHANGELOG.md +37 -0
- data/Gemfile +4 -0
- data/Gemfile.lock +43 -1
- data/bin/rubocop +27 -0
- data/bin/spoom +27 -0
- data/bin/srb +27 -0
- data/bin/srb-rbi +27 -0
- data/bin/tapioca +27 -0
- data/docs/INSTRUMENTATION.md +3 -3
- data/dsl/simple.rb +10 -0
- data/examples/retry/workflow.yml +23 -0
- data/lib/roast/dsl/executor.rb +26 -0
- data/lib/roast/dsl.rb +7 -0
- data/lib/roast/errors.rb +1 -0
- data/lib/roast/factories/api_provider_factory.rb +1 -0
- data/lib/roast/helpers/function_caching_interceptor.rb +3 -0
- data/lib/roast/helpers/logger.rb +6 -9
- data/lib/roast/helpers/metadata_access.rb +1 -0
- data/lib/roast/helpers/minitest_coverage_runner.rb +1 -0
- data/lib/roast/helpers/path_resolver.rb +8 -18
- data/lib/roast/helpers/prompt_loader.rb +3 -2
- data/lib/roast/helpers/timeout_handler.rb +3 -5
- data/lib/roast/initializers.rb +1 -0
- data/lib/roast/resources/api_resource.rb +4 -3
- data/lib/roast/resources/base_resource.rb +1 -0
- data/lib/roast/resources/directory_resource.rb +1 -0
- data/lib/roast/resources/file_resource.rb +1 -0
- data/lib/roast/resources/none_resource.rb +1 -0
- data/lib/roast/resources/url_resource.rb +2 -1
- data/lib/roast/resources.rb +1 -2
- data/lib/roast/services/context_threshold_checker.rb +1 -0
- data/lib/roast/services/token_counting_service.rb +1 -0
- data/lib/roast/tools/apply_diff.rb +1 -0
- data/lib/roast/tools/ask_user.rb +1 -0
- data/lib/roast/tools/bash.rb +1 -0
- data/lib/roast/tools/cmd.rb +1 -0
- data/lib/roast/tools/coding_agent.rb +1 -0
- data/lib/roast/tools/context_summarizer.rb +1 -0
- data/lib/roast/tools/grep.rb +1 -0
- data/lib/roast/tools/helpers/coding_agent_message_formatter.rb +1 -0
- data/lib/roast/tools/read_file.rb +1 -0
- data/lib/roast/tools/search_file.rb +1 -0
- data/lib/roast/tools/swarm.rb +1 -0
- data/lib/roast/tools/update_files.rb +1 -0
- data/lib/roast/tools/write_file.rb +1 -0
- data/lib/roast/tools.rb +2 -0
- data/lib/roast/value_objects/api_token.rb +1 -0
- data/lib/roast/value_objects/step_name.rb +1 -0
- data/lib/roast/value_objects/uri_base.rb +1 -0
- data/lib/roast/value_objects/workflow_path.rb +1 -0
- data/lib/roast/value_objects.rb +1 -0
- data/lib/roast/version.rb +2 -1
- data/lib/roast/workflow/agent_step.rb +1 -0
- data/lib/roast/workflow/api_configuration.rb +1 -0
- data/lib/roast/workflow/base_iteration_step.rb +1 -0
- data/lib/roast/workflow/base_step.rb +1 -0
- data/lib/roast/workflow/base_workflow.rb +1 -0
- data/lib/roast/workflow/case_executor.rb +1 -0
- data/lib/roast/workflow/case_step.rb +1 -0
- data/lib/roast/workflow/command_executor.rb +1 -0
- data/lib/roast/workflow/conditional_executor.rb +1 -0
- data/lib/roast/workflow/conditional_step.rb +1 -0
- data/lib/roast/workflow/configuration.rb +9 -0
- data/lib/roast/workflow/configuration_loader.rb +4 -1
- data/lib/roast/workflow/context_manager.rb +1 -0
- data/lib/roast/workflow/context_path_resolver.rb +1 -0
- data/lib/roast/workflow/dot_access_hash.rb +1 -0
- data/lib/roast/workflow/each_step.rb +1 -0
- data/lib/roast/workflow/error_handler.rb +39 -3
- data/lib/roast/workflow/expression_evaluator.rb +1 -0
- data/lib/roast/workflow/expression_utils.rb +1 -0
- data/lib/roast/workflow/file_state_repository.rb +2 -1
- data/lib/roast/workflow/input_executor.rb +1 -0
- data/lib/roast/workflow/input_step.rb +1 -0
- data/lib/roast/workflow/interpolator.rb +2 -1
- data/lib/roast/workflow/iteration_executor.rb +1 -0
- data/lib/roast/workflow/llm_boolean_coercer.rb +1 -0
- data/lib/roast/workflow/metadata_manager.rb +1 -0
- data/lib/roast/workflow/output_handler.rb +1 -0
- data/lib/roast/workflow/output_manager.rb +1 -0
- data/lib/roast/workflow/parallel_executor.rb +1 -0
- data/lib/roast/workflow/prompt_step.rb +1 -0
- data/lib/roast/workflow/repeat_step.rb +1 -0
- data/lib/roast/workflow/replay_handler.rb +1 -0
- data/lib/roast/workflow/resource_resolver.rb +2 -6
- data/lib/roast/workflow/session_manager.rb +1 -0
- data/lib/roast/workflow/shell_script_step.rb +1 -0
- data/lib/roast/workflow/sqlite_state_repository.rb +1 -0
- data/lib/roast/workflow/state_manager.rb +1 -0
- data/lib/roast/workflow/state_repository.rb +1 -0
- data/lib/roast/workflow/state_repository_factory.rb +4 -2
- data/lib/roast/workflow/step_completion_reporter.rb +1 -0
- data/lib/roast/workflow/step_executor_coordinator.rb +17 -6
- data/lib/roast/workflow/step_executor_factory.rb +1 -0
- data/lib/roast/workflow/step_executor_registry.rb +2 -3
- data/lib/roast/workflow/step_executor_with_reporting.rb +1 -0
- data/lib/roast/workflow/step_executors/base_step_executor.rb +1 -0
- data/lib/roast/workflow/step_executors/hash_step_executor.rb +1 -0
- data/lib/roast/workflow/step_executors/parallel_step_executor.rb +1 -0
- data/lib/roast/workflow/step_executors/string_step_executor.rb +1 -0
- data/lib/roast/workflow/step_factory.rb +1 -0
- data/lib/roast/workflow/step_finder.rb +1 -0
- data/lib/roast/workflow/step_loader.rb +1 -0
- data/lib/roast/workflow/step_name_extractor.rb +1 -0
- data/lib/roast/workflow/step_runner.rb +1 -0
- data/lib/roast/workflow/step_type_resolver.rb +1 -0
- data/lib/roast/workflow/validation_command.rb +1 -0
- data/lib/roast/workflow/validator.rb +1 -0
- data/lib/roast/workflow/validators/base_validator.rb +1 -0
- data/lib/roast/workflow/validators/dependency_validator.rb +1 -0
- data/lib/roast/workflow/validators/linting_validator.rb +1 -0
- data/lib/roast/workflow/validators/schema_validator.rb +1 -0
- data/lib/roast/workflow/validators/step_collector.rb +1 -0
- data/lib/roast/workflow/validators/validation_orchestrator.rb +1 -0
- data/lib/roast/workflow/workflow_context.rb +1 -0
- data/lib/roast/workflow/workflow_execution_context.rb +1 -0
- data/lib/roast/workflow/workflow_executor.rb +2 -1
- data/lib/roast/workflow/workflow_initializer.rb +16 -1
- data/lib/roast/workflow/workflow_runner.rb +66 -55
- data/lib/roast/workflow.rb +1 -0
- data/lib/roast/workflow_diagram_generator.rb +3 -2
- data/lib/roast.rb +23 -8
- data/sorbet/config +8 -0
- data/sorbet/rbi/dsl/.gitattributes +1 -0
- data/sorbet/rbi/dsl/active_support/callbacks.rbi +21 -0
- data/sorbet/rbi/gems/.gitattributes +1 -0
- data/sorbet/rbi/gems/activesupport@8.0.2.rbi +19107 -0
- data/sorbet/rbi/gems/addressable@2.8.7.rbi +1994 -0
- data/sorbet/rbi/gems/ast@2.4.3.rbi +585 -0
- data/sorbet/rbi/gems/base64@0.3.0.rbi +545 -0
- data/sorbet/rbi/gems/benchmark@0.4.1.rbi +619 -0
- data/sorbet/rbi/gems/bigdecimal@3.2.2.rbi +62 -0
- data/sorbet/rbi/gems/cgi@0.5.0.rbi +2961 -0
- data/sorbet/rbi/gems/claude_swarm@0.1.19.rbi +568 -0
- data/sorbet/rbi/gems/cli-kit@5.0.1.rbi +1991 -0
- data/sorbet/rbi/gems/cli-ui@2.3.0.rbi +3181 -0
- data/sorbet/rbi/gems/coderay@1.1.3.rbi +9 -0
- data/sorbet/rbi/gems/concurrent-ruby@1.3.5.rbi +11657 -0
- data/sorbet/rbi/gems/connection_pool@2.5.3.rbi +9 -0
- data/sorbet/rbi/gems/crack@1.0.0.rbi +145 -0
- data/sorbet/rbi/gems/diff-lcs@1.6.2.rbi +972 -0
- data/sorbet/rbi/gems/dotenv@3.1.8.rbi +295 -0
- data/sorbet/rbi/gems/drb@2.2.3.rbi +1661 -0
- data/sorbet/rbi/gems/dry-configurable@1.3.0.rbi +672 -0
- data/sorbet/rbi/gems/dry-core@1.1.0.rbi +1894 -0
- data/sorbet/rbi/gems/dry-inflector@1.2.0.rbi +659 -0
- data/sorbet/rbi/gems/dry-initializer@3.2.0.rbi +781 -0
- data/sorbet/rbi/gems/dry-logic@1.6.0.rbi +1127 -0
- data/sorbet/rbi/gems/dry-schema@1.14.1.rbi +3727 -0
- data/sorbet/rbi/gems/dry-types@1.8.3.rbi +3969 -0
- data/sorbet/rbi/gems/erubi@1.13.1.rbi +155 -0
- data/sorbet/rbi/gems/event_stream_parser@1.0.0.rbi +49 -0
- data/sorbet/rbi/gems/faraday-multipart@1.1.1.rbi +283 -0
- data/sorbet/rbi/gems/faraday-net_http@3.4.1.rbi +147 -0
- data/sorbet/rbi/gems/faraday-retry@2.3.2.rbi +9 -0
- data/sorbet/rbi/gems/faraday@2.13.1.rbi +2977 -0
- data/sorbet/rbi/gems/fast-mcp-annotations@1.5.3.rbi +1588 -0
- data/sorbet/rbi/gems/ffi@1.17.2.rbi +9 -0
- data/sorbet/rbi/gems/formatador@1.1.0.rbi +9 -0
- data/sorbet/rbi/gems/guard-compat@1.2.1.rbi +102 -0
- data/sorbet/rbi/gems/guard-minitest@2.4.6.rbi +402 -0
- data/sorbet/rbi/gems/guard@2.19.1.rbi +2283 -0
- data/sorbet/rbi/gems/hashdiff@1.2.0.rbi +355 -0
- data/sorbet/rbi/gems/i18n@1.14.7.rbi +2359 -0
- data/sorbet/rbi/gems/json-schema@5.1.1.rbi +1466 -0
- data/sorbet/rbi/gems/json@2.12.2.rbi +2051 -0
- data/sorbet/rbi/gems/language_server-protocol@3.17.0.5.rbi +9 -0
- data/sorbet/rbi/gems/lint_roller@1.1.0.rbi +9 -0
- data/sorbet/rbi/gems/listen@3.9.0.rbi +1206 -0
- data/sorbet/rbi/gems/logger@1.7.0.rbi +963 -0
- data/sorbet/rbi/gems/lumberjack@1.2.10.rbi +1830 -0
- data/sorbet/rbi/gems/method_source@1.1.0.rbi +9 -0
- data/sorbet/rbi/gems/mime-types-data@3.2025.0617.rbi +136 -0
- data/sorbet/rbi/gems/mime-types@3.7.0.rbi +1342 -0
- data/sorbet/rbi/gems/minitest-rg@5.3.0.rbi +160 -0
- data/sorbet/rbi/gems/minitest@5.25.5.rbi +1640 -0
- data/sorbet/rbi/gems/mocha@2.7.1.rbi +12 -0
- data/sorbet/rbi/gems/multipart-post@2.4.1.rbi +244 -0
- data/sorbet/rbi/gems/nenv@0.3.0.rbi +147 -0
- data/sorbet/rbi/gems/net-http@0.6.0.rbi +4247 -0
- data/sorbet/rbi/gems/netrc@0.11.0.rbi +159 -0
- data/sorbet/rbi/gems/notiffany@0.1.3.rbi +1079 -0
- data/sorbet/rbi/gems/open_router@0.3.3.rbi +230 -0
- data/sorbet/rbi/gems/ostruct@0.6.2.rbi +354 -0
- data/sorbet/rbi/gems/parallel@1.27.0.rbi +291 -0
- data/sorbet/rbi/gems/parser@3.3.8.0.rbi +5535 -0
- data/sorbet/rbi/gems/prism@1.4.0.rbi +41732 -0
- data/sorbet/rbi/gems/pry@0.15.2.rbi +9 -0
- data/sorbet/rbi/gems/public_suffix@6.0.2.rbi +936 -0
- data/sorbet/rbi/gems/racc@1.8.1.rbi +158 -0
- data/sorbet/rbi/gems/rack@2.2.17.rbi +5659 -0
- data/sorbet/rbi/gems/rainbow@3.1.1.rbi +9 -0
- data/sorbet/rbi/gems/raix@1.0.2.rbi +1104 -0
- data/sorbet/rbi/gems/rake@13.3.0.rbi +3036 -0
- data/sorbet/rbi/gems/rb-fsevent@0.11.2.rbi +9 -0
- data/sorbet/rbi/gems/rb-inotify@0.11.1.rbi +9 -0
- data/sorbet/rbi/gems/rbi@0.3.6.rbi +6893 -0
- data/sorbet/rbi/gems/rbs@3.9.4.rbi +6978 -0
- data/sorbet/rbi/gems/regexp_parser@2.10.0.rbi +9 -0
- data/sorbet/rbi/gems/rexml@3.4.1.rbi +5346 -0
- data/sorbet/rbi/gems/rubocop-ast@1.45.1.rbi +9 -0
- data/sorbet/rbi/gems/rubocop-shopify@2.17.1.rbi +9 -0
- data/sorbet/rbi/gems/rubocop@1.77.0.rbi +9 -0
- data/sorbet/rbi/gems/ruby-graphviz@1.2.5.rbi +1333 -0
- data/sorbet/rbi/gems/ruby-openai@8.1.0.rbi +758 -0
- data/sorbet/rbi/gems/ruby-progressbar@1.13.0.rbi +9 -0
- data/sorbet/rbi/gems/ruby2_keywords@0.0.5.rbi +9 -0
- data/sorbet/rbi/gems/securerandom@0.4.1.rbi +75 -0
- data/sorbet/rbi/gems/shellany@0.0.1.rbi +102 -0
- data/sorbet/rbi/gems/spoom@1.6.3.rbi +6985 -0
- data/sorbet/rbi/gems/sqlite3@2.7.0.rbi +1900 -0
- data/sorbet/rbi/gems/tapioca@0.16.11.rbi +3628 -0
- data/sorbet/rbi/gems/thor@1.4.0.rbi +4399 -0
- data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +5918 -0
- data/sorbet/rbi/gems/unicode-display_width@3.1.4.rbi +9 -0
- data/sorbet/rbi/gems/unicode-emoji@4.0.4.rbi +9 -0
- data/sorbet/rbi/gems/uri@1.0.3.rbi +2349 -0
- data/sorbet/rbi/gems/vcr@6.3.1.rbi +3040 -0
- data/sorbet/rbi/gems/webmock@3.25.1.rbi +1792 -0
- data/sorbet/rbi/gems/yard-sorbet@0.9.0.rbi +435 -0
- data/sorbet/rbi/gems/yard@0.9.37.rbi +18492 -0
- data/sorbet/rbi/gems/zeitwerk@2.7.3.rbi +1429 -0
- data/sorbet/tapioca/config.yml +13 -0
- data/sorbet/tapioca/require.rb +36 -0
- metadata +114 -2
- data/lib/roast/workflow/configuration_parser.rb +0 -54
@@ -0,0 +1,12 @@
|
|
1
|
+
# typed: true
|
2
|
+
|
3
|
+
# DO NOT EDIT MANUALLY
|
4
|
+
# This is an autogenerated file for types exported from the `mocha` gem.
|
5
|
+
# Please instead update this file by running `bin/tapioca gem mocha`.
|
6
|
+
|
7
|
+
|
8
|
+
# source://mocha//lib/mocha/version.rb#1
|
9
|
+
module Mocha; end
|
10
|
+
|
11
|
+
# source://mocha//lib/mocha/version.rb#2
|
12
|
+
Mocha::VERSION = T.let(T.unsafe(nil), String)
|
@@ -0,0 +1,244 @@
|
|
1
|
+
# typed: true
|
2
|
+
|
3
|
+
# DO NOT EDIT MANUALLY
|
4
|
+
# This is an autogenerated file for types exported from the `multipart-post` gem.
|
5
|
+
# Please instead update this file by running `bin/tapioca gem multipart-post`.
|
6
|
+
|
7
|
+
|
8
|
+
# source://multipart-post//lib/multipart/post/composite_read_io.rb#90
|
9
|
+
CompositeIO = Multipart::Post::CompositeReadIO
|
10
|
+
|
11
|
+
# source://multipart-post//lib/multipart/post/version.rb#7
|
12
|
+
module Multipart; end
|
13
|
+
|
14
|
+
# source://multipart-post//lib/multipart/post/version.rb#8
|
15
|
+
module Multipart::Post; end
|
16
|
+
|
17
|
+
# Concatenate together multiple IO objects into a single, composite IO object
|
18
|
+
# for purposes of reading as a single stream.
|
19
|
+
#
|
20
|
+
# @example
|
21
|
+
# crio = CompositeReadIO.new(StringIO.new('one'),
|
22
|
+
# StringIO.new('two'),
|
23
|
+
# StringIO.new('three'))
|
24
|
+
# puts crio.read # => "onetwothree"
|
25
|
+
#
|
26
|
+
# source://multipart-post//lib/multipart/post/composite_read_io.rb#28
|
27
|
+
class Multipart::Post::CompositeReadIO
|
28
|
+
# Create a new composite-read IO from the arguments, all of which should
|
29
|
+
# respond to #read in a manner consistent with IO.
|
30
|
+
#
|
31
|
+
# @return [CompositeReadIO] a new instance of CompositeReadIO
|
32
|
+
#
|
33
|
+
# source://multipart-post//lib/multipart/post/composite_read_io.rb#31
|
34
|
+
def initialize(*ios); end
|
35
|
+
|
36
|
+
# Close all the underyling IOs.
|
37
|
+
#
|
38
|
+
# source://multipart-post//lib/multipart/post/composite_read_io.rb#37
|
39
|
+
def close; end
|
40
|
+
|
41
|
+
# @return [Boolean]
|
42
|
+
#
|
43
|
+
# source://multipart-post//lib/multipart/post/composite_read_io.rb#46
|
44
|
+
def closed?; end
|
45
|
+
|
46
|
+
# Read from IOs in order until `length` bytes have been received.
|
47
|
+
#
|
48
|
+
# source://multipart-post//lib/multipart/post/composite_read_io.rb#51
|
49
|
+
def read(length = T.unsafe(nil), outbuf = T.unsafe(nil)); end
|
50
|
+
|
51
|
+
# source://multipart-post//lib/multipart/post/composite_read_io.rb#72
|
52
|
+
def rewind; end
|
53
|
+
|
54
|
+
private
|
55
|
+
|
56
|
+
# source://multipart-post//lib/multipart/post/composite_read_io.rb#83
|
57
|
+
def advance_io; end
|
58
|
+
|
59
|
+
# source://multipart-post//lib/multipart/post/composite_read_io.rb#79
|
60
|
+
def current_io; end
|
61
|
+
end
|
62
|
+
|
63
|
+
# source://multipart-post//lib/multipart/post/multipartable.rb#23
|
64
|
+
module Multipart::Post::Multipartable
|
65
|
+
# source://multipart-post//lib/multipart/post/multipartable.rb#38
|
66
|
+
def initialize(path, params, headers = T.unsafe(nil), boundary = T.unsafe(nil)); end
|
67
|
+
|
68
|
+
# Returns the value of attribute boundary.
|
69
|
+
#
|
70
|
+
# source://multipart-post//lib/multipart/post/multipartable.rb#61
|
71
|
+
def boundary; end
|
72
|
+
|
73
|
+
private
|
74
|
+
|
75
|
+
# source://multipart-post//lib/multipart/post/multipartable.rb#65
|
76
|
+
def symbolize_keys(hash); end
|
77
|
+
|
78
|
+
class << self
|
79
|
+
# source://multipart-post//lib/multipart/post/multipartable.rb#24
|
80
|
+
def secure_boundary; end
|
81
|
+
end
|
82
|
+
end
|
83
|
+
|
84
|
+
# source://multipart-post//lib/multipart/post/parts.rb#26
|
85
|
+
module Multipart::Post::Parts; end
|
86
|
+
|
87
|
+
# Represents the epilogue or closing boundary.
|
88
|
+
#
|
89
|
+
# source://multipart-post//lib/multipart/post/parts.rb#138
|
90
|
+
class Multipart::Post::Parts::EpiloguePart
|
91
|
+
include ::Multipart::Post::Parts::Part
|
92
|
+
|
93
|
+
# @return [EpiloguePart] a new instance of EpiloguePart
|
94
|
+
#
|
95
|
+
# source://multipart-post//lib/multipart/post/parts.rb#141
|
96
|
+
def initialize(boundary); end
|
97
|
+
end
|
98
|
+
|
99
|
+
# Represents a part to be filled from file IO.
|
100
|
+
#
|
101
|
+
# source://multipart-post//lib/multipart/post/parts.rb#83
|
102
|
+
class Multipart::Post::Parts::FilePart
|
103
|
+
include ::Multipart::Post::Parts::Part
|
104
|
+
|
105
|
+
# @param boundary [String]
|
106
|
+
# @param name [#to_s]
|
107
|
+
# @param io [IO]
|
108
|
+
# @param headers [Hash]
|
109
|
+
# @return [FilePart] a new instance of FilePart
|
110
|
+
#
|
111
|
+
# source://multipart-post//lib/multipart/post/parts.rb#92
|
112
|
+
def initialize(boundary, name, io, headers = T.unsafe(nil)); end
|
113
|
+
|
114
|
+
# @param boundary [String]
|
115
|
+
# @param name [#to_s]
|
116
|
+
# @param filename [String]
|
117
|
+
# @param type [String]
|
118
|
+
# @param content_len [Integer]
|
119
|
+
# @param opts [Hash]
|
120
|
+
#
|
121
|
+
# source://multipart-post//lib/multipart/post/parts.rb#107
|
122
|
+
def build_head(boundary, name, filename, type, content_len, opts = T.unsafe(nil)); end
|
123
|
+
|
124
|
+
# Returns the value of attribute length.
|
125
|
+
#
|
126
|
+
# source://multipart-post//lib/multipart/post/parts.rb#86
|
127
|
+
def length; end
|
128
|
+
end
|
129
|
+
|
130
|
+
# Represents a parametric part to be filled with given value.
|
131
|
+
#
|
132
|
+
# source://multipart-post//lib/multipart/post/parts.rb#51
|
133
|
+
class Multipart::Post::Parts::ParamPart
|
134
|
+
include ::Multipart::Post::Parts::Part
|
135
|
+
|
136
|
+
# @param boundary [String]
|
137
|
+
# @param name [#to_s]
|
138
|
+
# @param value [String]
|
139
|
+
# @param headers [Hash] Content-Type and Content-ID are used, if present.
|
140
|
+
# @return [ParamPart] a new instance of ParamPart
|
141
|
+
#
|
142
|
+
# source://multipart-post//lib/multipart/post/parts.rb#58
|
143
|
+
def initialize(boundary, name, value, headers = T.unsafe(nil)); end
|
144
|
+
|
145
|
+
# @param boundary [String]
|
146
|
+
# @param name [#to_s]
|
147
|
+
# @param value [String]
|
148
|
+
# @param headers [Hash] Content-Type is used, if present.
|
149
|
+
#
|
150
|
+
# source://multipart-post//lib/multipart/post/parts.rb#71
|
151
|
+
def build_part(boundary, name, value, headers = T.unsafe(nil)); end
|
152
|
+
|
153
|
+
# source://multipart-post//lib/multipart/post/parts.rb#63
|
154
|
+
def length; end
|
155
|
+
end
|
156
|
+
|
157
|
+
# source://multipart-post//lib/multipart/post/parts.rb#27
|
158
|
+
module Multipart::Post::Parts::Part
|
159
|
+
# source://multipart-post//lib/multipart/post/parts.rb#41
|
160
|
+
def length; end
|
161
|
+
|
162
|
+
# source://multipart-post//lib/multipart/post/parts.rb#45
|
163
|
+
def to_io; end
|
164
|
+
|
165
|
+
class << self
|
166
|
+
# @return [Boolean]
|
167
|
+
#
|
168
|
+
# source://multipart-post//lib/multipart/post/parts.rb#37
|
169
|
+
def file?(value); end
|
170
|
+
|
171
|
+
# source://multipart-post//lib/multipart/post/parts.rb#28
|
172
|
+
def new(boundary, name, value, headers = T.unsafe(nil)); end
|
173
|
+
end
|
174
|
+
end
|
175
|
+
|
176
|
+
# Convenience methods for dealing with files and IO that are to be uploaded.
|
177
|
+
#
|
178
|
+
# source://multipart-post//lib/multipart/post/upload_io.rb#9
|
179
|
+
class Multipart::Post::UploadIO
|
180
|
+
# Create an upload IO suitable for including in the params hash of a
|
181
|
+
# Net::HTTP::Post::Multipart.
|
182
|
+
#
|
183
|
+
# Can take two forms. The first accepts a filename and content type, and
|
184
|
+
# opens the file for reading (to be closed by finalizer).
|
185
|
+
#
|
186
|
+
# The second accepts an already-open IO, but also requires a third argument,
|
187
|
+
# the filename from which it was opened (particularly useful/recommended if
|
188
|
+
# uploading directly from a form in a framework, which often save the file to
|
189
|
+
# an arbitrarily named RackMultipart file in /tmp).
|
190
|
+
#
|
191
|
+
# @example
|
192
|
+
# UploadIO.new("file.txt", "text/plain")
|
193
|
+
# UploadIO.new(file_io, "text/plain", "file.txt")
|
194
|
+
# @return [UploadIO] a new instance of UploadIO
|
195
|
+
#
|
196
|
+
# source://multipart-post//lib/multipart/post/upload_io.rb#26
|
197
|
+
def initialize(filename_or_io, content_type, filename = T.unsafe(nil), opts = T.unsafe(nil)); end
|
198
|
+
|
199
|
+
# Returns the value of attribute content_type.
|
200
|
+
#
|
201
|
+
# source://multipart-post//lib/multipart/post/upload_io.rb#10
|
202
|
+
def content_type; end
|
203
|
+
|
204
|
+
# Returns the value of attribute io.
|
205
|
+
#
|
206
|
+
# source://multipart-post//lib/multipart/post/upload_io.rb#10
|
207
|
+
def io; end
|
208
|
+
|
209
|
+
# Returns the value of attribute local_path.
|
210
|
+
#
|
211
|
+
# source://multipart-post//lib/multipart/post/upload_io.rb#10
|
212
|
+
def local_path; end
|
213
|
+
|
214
|
+
# source://multipart-post//lib/multipart/post/upload_io.rb#52
|
215
|
+
def method_missing(*args); end
|
216
|
+
|
217
|
+
# Returns the value of attribute opts.
|
218
|
+
#
|
219
|
+
# source://multipart-post//lib/multipart/post/upload_io.rb#10
|
220
|
+
def opts; end
|
221
|
+
|
222
|
+
# Returns the value of attribute original_filename.
|
223
|
+
#
|
224
|
+
# source://multipart-post//lib/multipart/post/upload_io.rb#10
|
225
|
+
def original_filename; end
|
226
|
+
|
227
|
+
# @return [Boolean]
|
228
|
+
#
|
229
|
+
# source://multipart-post//lib/multipart/post/upload_io.rb#56
|
230
|
+
def respond_to?(meth, include_all = T.unsafe(nil)); end
|
231
|
+
|
232
|
+
class << self
|
233
|
+
# @raise [ArgumentError]
|
234
|
+
#
|
235
|
+
# source://multipart-post//lib/multipart/post/upload_io.rb#46
|
236
|
+
def convert!(io, content_type, original_filename, local_path); end
|
237
|
+
end
|
238
|
+
end
|
239
|
+
|
240
|
+
# source://multipart-post//lib/multipart/post/version.rb#9
|
241
|
+
Multipart::Post::VERSION = T.let(T.unsafe(nil), String)
|
242
|
+
|
243
|
+
# source://multipart-post//lib/multipart/post/upload_io.rb#63
|
244
|
+
UploadIO = Multipart::Post::UploadIO
|
@@ -0,0 +1,147 @@
|
|
1
|
+
# typed: true
|
2
|
+
|
3
|
+
# DO NOT EDIT MANUALLY
|
4
|
+
# This is an autogenerated file for types exported from the `nenv` gem.
|
5
|
+
# Please instead update this file by running `bin/tapioca gem nenv`.
|
6
|
+
|
7
|
+
|
8
|
+
# source://nenv//lib/nenv/version.rb#1
|
9
|
+
module Nenv
|
10
|
+
class << self
|
11
|
+
# source://nenv//lib/nenv.rb#26
|
12
|
+
def instance; end
|
13
|
+
|
14
|
+
# source://nenv//lib/nenv.rb#18
|
15
|
+
def method_missing(meth, *args); end
|
16
|
+
|
17
|
+
# source://nenv//lib/nenv.rb#22
|
18
|
+
def reset; end
|
19
|
+
|
20
|
+
# @return [Boolean]
|
21
|
+
#
|
22
|
+
# source://nenv//lib/nenv.rb#14
|
23
|
+
def respond_to?(meth); end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
# source://nenv//lib/nenv/autoenvironment.rb#3
|
28
|
+
class Nenv::AutoEnvironment < ::Nenv::Environment
|
29
|
+
# source://nenv//lib/nenv/autoenvironment.rb#4
|
30
|
+
def method_missing(meth, *args); end
|
31
|
+
end
|
32
|
+
|
33
|
+
# source://nenv//lib/nenv/builder.rb#4
|
34
|
+
module Nenv::Builder
|
35
|
+
class << self
|
36
|
+
# source://nenv//lib/nenv/builder.rb#5
|
37
|
+
def build(&block); end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
# source://nenv//lib/nenv/environment/dumper.rb#2
|
42
|
+
class Nenv::Environment
|
43
|
+
# @return [Environment] a new instance of Environment
|
44
|
+
#
|
45
|
+
# source://nenv//lib/nenv/environment.rb#21
|
46
|
+
def initialize(namespace = T.unsafe(nil)); end
|
47
|
+
|
48
|
+
# source://nenv//lib/nenv/environment.rb#25
|
49
|
+
def create_method(meth, &block); end
|
50
|
+
|
51
|
+
private
|
52
|
+
|
53
|
+
# source://nenv//lib/nenv/environment.rb#35
|
54
|
+
def _namespaced_sanitize(meth); end
|
55
|
+
|
56
|
+
# source://nenv//lib/nenv/environment.rb#31
|
57
|
+
def _sanitize(meth); end
|
58
|
+
|
59
|
+
class << self
|
60
|
+
# source://nenv//lib/nenv/environment.rb#44
|
61
|
+
def _create_env_accessor(klass, meth, &block); end
|
62
|
+
|
63
|
+
# source://nenv//lib/nenv/environment.rb#40
|
64
|
+
def create_method(meth, &block); end
|
65
|
+
|
66
|
+
private
|
67
|
+
|
68
|
+
# source://nenv//lib/nenv/environment.rb#66
|
69
|
+
def _create_env_reader(klass, meth, &block); end
|
70
|
+
|
71
|
+
# source://nenv//lib/nenv/environment.rb#56
|
72
|
+
def _create_env_writer(klass, meth, &block); end
|
73
|
+
|
74
|
+
# source://nenv//lib/nenv/environment.rb#76
|
75
|
+
def _fail_if_accessor_exists(klass, meth); end
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
# source://nenv//lib/nenv/environment.rb#15
|
80
|
+
class Nenv::Environment::AlreadyExistsError < ::Nenv::Environment::MethodError
|
81
|
+
# source://nenv//lib/nenv/environment.rb#16
|
82
|
+
def message; end
|
83
|
+
end
|
84
|
+
|
85
|
+
# source://nenv//lib/nenv/environment/dumper.rb#3
|
86
|
+
module Nenv::Environment::Dumper
|
87
|
+
class << self
|
88
|
+
# source://nenv//lib/nenv/environment/dumper.rb#6
|
89
|
+
def setup(&callback); end
|
90
|
+
end
|
91
|
+
end
|
92
|
+
|
93
|
+
# source://nenv//lib/nenv/environment/dumper/default.rb#3
|
94
|
+
module Nenv::Environment::Dumper::Default
|
95
|
+
class << self
|
96
|
+
# source://nenv//lib/nenv/environment/dumper/default.rb#4
|
97
|
+
def call(raw_value); end
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
# source://nenv//lib/nenv/environment.rb#6
|
102
|
+
class Nenv::Environment::Error < ::ArgumentError; end
|
103
|
+
|
104
|
+
# source://nenv//lib/nenv/environment/loader.rb#3
|
105
|
+
module Nenv::Environment::Loader
|
106
|
+
class << self
|
107
|
+
# source://nenv//lib/nenv/environment/loader.rb#7
|
108
|
+
def setup(meth, &callback); end
|
109
|
+
end
|
110
|
+
end
|
111
|
+
|
112
|
+
# source://nenv//lib/nenv/environment/loader/default.rb#3
|
113
|
+
module Nenv::Environment::Loader::Default
|
114
|
+
class << self
|
115
|
+
# source://nenv//lib/nenv/environment/loader/default.rb#4
|
116
|
+
def call(raw_value); end
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
120
|
+
# source://nenv//lib/nenv/environment/loader/predicate.rb#3
|
121
|
+
module Nenv::Environment::Loader::Predicate
|
122
|
+
class << self
|
123
|
+
# source://nenv//lib/nenv/environment/loader/predicate.rb#4
|
124
|
+
def call(raw_value); end
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
# source://nenv//lib/nenv/environment.rb#9
|
129
|
+
class Nenv::Environment::MethodError < ::Nenv::Environment::Error
|
130
|
+
# @return [MethodError] a new instance of MethodError
|
131
|
+
#
|
132
|
+
# source://nenv//lib/nenv/environment.rb#10
|
133
|
+
def initialize(meth); end
|
134
|
+
end
|
135
|
+
|
136
|
+
# source://nenv//lib/nenv/version.rb#2
|
137
|
+
Nenv::VERSION = T.let(T.unsafe(nil), String)
|
138
|
+
|
139
|
+
class Object < ::BasicObject
|
140
|
+
include ::Kernel
|
141
|
+
include ::PP::ObjectMixin
|
142
|
+
|
143
|
+
private
|
144
|
+
|
145
|
+
# source://nenv//lib/nenv.rb#6
|
146
|
+
def Nenv(namespace = T.unsafe(nil)); end
|
147
|
+
end
|