modAL 1.0.6.dev47__tar.gz → 1.0.6.dev51__tar.gz
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.
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/PKG-INFO +1 -1
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/run.py +12 -6
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/client.pyi +2 -2
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal.egg-info/PKG-INFO +1 -1
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/api.proto +1 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/api_pb2.py +526 -526
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/api_pb2.pyi +7 -1
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_version/__init__.py +1 -1
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/LICENSE +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/README.md +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/__init__.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/__main__.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_clustered_functions.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_clustered_functions.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_container_entrypoint.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_functions.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_ipython.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_location.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_object.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_output.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_partial_function.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_pty.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_resolver.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_resources.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_runtime/__init__.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_runtime/asgi.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_runtime/container_io_manager.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_runtime/container_io_manager.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_runtime/execution_context.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_runtime/execution_context.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_runtime/gpu_memory_snapshot.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_runtime/telemetry.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_runtime/user_code_imports.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_serialization.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_traceback.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_tunnel.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_tunnel.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_type_manager.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/__init__.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/app_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/async_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/auth_token_manager.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/blob_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/bytes_io_segment_payload.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/deprecation.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/docker_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/function_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/git_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/grpc_testing.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/grpc_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/hash_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/http_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/jwt_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/logger.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/mount_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/name_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/package_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/pattern_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/rand_pb_testing.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/shell_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_utils/time_utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_vendor/__init__.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_vendor/a2wsgi_wsgi.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_vendor/cloudpickle.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_vendor/tblib.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/_watcher.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/app.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/app.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/call_graph.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/__init__.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/_download.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/_traceback.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/app.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/cluster.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/config.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/container.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/dict.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/entry_point.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/environment.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/import_refs.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/launch.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/network_file_system.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/profile.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/programs/__init__.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/programs/run_jupyter.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/programs/vscode.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/queues.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/secret.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/token.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/utils.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cli/volume.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/client.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cloud_bucket_mount.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cloud_bucket_mount.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cls.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/cls.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/config.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/container_process.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/container_process.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/dict.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/dict.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/environments.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/environments.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/exception.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/experimental/__init__.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/experimental/flash.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/experimental/flash.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/experimental/ipython.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/file_io.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/file_io.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/file_pattern_matcher.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/functions.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/functions.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/gpu.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/image.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/image.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/io_streams.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/io_streams.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/mount.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/mount.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/network_file_system.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/network_file_system.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/object.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/object.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/output.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/parallel_map.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/parallel_map.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/partial_function.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/partial_function.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/proxy.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/proxy.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/py.typed +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/queue.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/queue.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/requirements/2023.12.312.txt +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/requirements/2023.12.txt +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/requirements/2024.04.txt +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/requirements/2024.10.txt +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/requirements/2025.06.txt +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/requirements/PREVIEW.txt +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/requirements/README.md +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/requirements/base-images.json +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/retries.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/runner.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/runner.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/running_app.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/sandbox.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/sandbox.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/schedule.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/scheduler_placement.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/secret.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/secret.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/serving.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/serving.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/snapshot.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/snapshot.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/stream_type.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/token_flow.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/token_flow.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/volume.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal/volume.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal.egg-info/SOURCES.txt +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal.egg-info/dependency_links.txt +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal.egg-info/entry_points.txt +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal.egg-info/requires.txt +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal.egg-info/top_level.txt +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_docs/__init__.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_docs/gen_cli_docs.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_docs/gen_reference_docs.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_docs/mdmd/__init__.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_docs/mdmd/mdmd.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_docs/mdmd/signatures.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/__init__.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/api_grpc.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/api_pb2_grpc.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/api_pb2_grpc.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/modal_api_grpc.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/modal_options_grpc.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/options.proto +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/options_grpc.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/options_pb2.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/options_pb2.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/options_pb2_grpc.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/options_pb2_grpc.pyi +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_proto/py.typed +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/modal_version/__main__.py +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/pyproject.toml +0 -0
- {modal-1.0.6.dev47 → modal-1.0.6.dev51}/setup.cfg +0 -0
|
@@ -207,7 +207,7 @@ def _make_click_function(app, signature: CliRunnableSignature, inner: Callable[[
|
|
|
207
207
|
return f
|
|
208
208
|
|
|
209
209
|
|
|
210
|
-
def _get_click_command_for_function(app: App, function: Function):
|
|
210
|
+
def _get_click_command_for_function(app: App, function: Function, ctx: click.Context):
|
|
211
211
|
if function.is_generator:
|
|
212
212
|
raise InvalidError("`modal run` is not supported for generator functions")
|
|
213
213
|
|
|
@@ -216,7 +216,10 @@ def _get_click_command_for_function(app: App, function: Function):
|
|
|
216
216
|
signature: CliRunnableSignature = _get_cli_runnable_signature(sig, type_hints)
|
|
217
217
|
|
|
218
218
|
def _inner(args, click_kwargs):
|
|
219
|
-
|
|
219
|
+
if ctx.obj["detach"]:
|
|
220
|
+
return function.spawn(*args, **click_kwargs).get()
|
|
221
|
+
else:
|
|
222
|
+
return function.remote(*args, **click_kwargs)
|
|
220
223
|
|
|
221
224
|
f = _make_click_function(app, signature, _inner)
|
|
222
225
|
|
|
@@ -230,7 +233,7 @@ def _get_click_command_for_function(app: App, function: Function):
|
|
|
230
233
|
return click.command(with_click_options)
|
|
231
234
|
|
|
232
235
|
|
|
233
|
-
def _get_click_command_for_cls(app: App, method_ref: MethodReference):
|
|
236
|
+
def _get_click_command_for_cls(app: App, method_ref: MethodReference, ctx: click.Context):
|
|
234
237
|
parameters: dict[str, ParameterMetadata]
|
|
235
238
|
cls = method_ref.cls
|
|
236
239
|
method_name = method_ref.method_name
|
|
@@ -271,7 +274,10 @@ def _get_click_command_for_cls(app: App, method_ref: MethodReference):
|
|
|
271
274
|
|
|
272
275
|
instance = cls(**cls_kwargs)
|
|
273
276
|
method: Function = getattr(instance, method_name)
|
|
274
|
-
|
|
277
|
+
if ctx.obj["detach"]:
|
|
278
|
+
return method.spawn(*args, **fun_kwargs).get()
|
|
279
|
+
else:
|
|
280
|
+
return method.remote(*args, **fun_kwargs)
|
|
275
281
|
|
|
276
282
|
f = _make_click_function(app, fun_signature, _inner)
|
|
277
283
|
with_click_options = _add_click_options(f, parameters)
|
|
@@ -376,9 +382,9 @@ class RunGroup(click.Group):
|
|
|
376
382
|
if isinstance(runnable, LocalEntrypoint):
|
|
377
383
|
click_command = _get_click_command_for_local_entrypoint(app, runnable)
|
|
378
384
|
elif isinstance(runnable, Function):
|
|
379
|
-
click_command = _get_click_command_for_function(app, runnable)
|
|
385
|
+
click_command = _get_click_command_for_function(app, runnable, ctx)
|
|
380
386
|
elif isinstance(runnable, MethodReference):
|
|
381
|
-
click_command = _get_click_command_for_cls(app, runnable)
|
|
387
|
+
click_command = _get_click_command_for_cls(app, runnable, ctx)
|
|
382
388
|
else:
|
|
383
389
|
# This should be unreachable...
|
|
384
390
|
raise ValueError(f"{runnable} is neither function, local entrypoint or class/method")
|
|
@@ -33,7 +33,7 @@ class _Client:
|
|
|
33
33
|
server_url: str,
|
|
34
34
|
client_type: int,
|
|
35
35
|
credentials: typing.Optional[tuple[str, str]],
|
|
36
|
-
version: str = "1.0.6.
|
|
36
|
+
version: str = "1.0.6.dev51",
|
|
37
37
|
):
|
|
38
38
|
"""mdmd:hidden
|
|
39
39
|
The Modal client object is not intended to be instantiated directly by users.
|
|
@@ -163,7 +163,7 @@ class Client:
|
|
|
163
163
|
server_url: str,
|
|
164
164
|
client_type: int,
|
|
165
165
|
credentials: typing.Optional[tuple[str, str]],
|
|
166
|
-
version: str = "1.0.6.
|
|
166
|
+
version: str = "1.0.6.dev51",
|
|
167
167
|
):
|
|
168
168
|
"""mdmd:hidden
|
|
169
169
|
The Modal client object is not intended to be instantiated directly by users.
|
|
@@ -1690,6 +1690,7 @@ message FunctionGetOutputsRequest {
|
|
|
1690
1690
|
double requested_at = 8; // Used for waypoints.
|
|
1691
1691
|
// The jwts the client expects the server to be processing. This is optional and used for sync inputs only.
|
|
1692
1692
|
repeated string input_jwts = 9;
|
|
1693
|
+
optional int32 start_idx = 10; // for async batch requests. this indicates which index to start from.
|
|
1693
1694
|
}
|
|
1694
1695
|
|
|
1695
1696
|
message FunctionGetOutputsResponse {
|