modal 1.1.5.dev75__tar.gz → 1.1.5.dev76__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.
Potentially problematic release.
This version of modal might be problematic. Click here for more details.
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/PKG-INFO +1 -1
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/client.pyi +2 -2
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal.egg-info/PKG-INFO +1 -1
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/api.proto +16 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/api_grpc.py +32 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/api_pb2.py +1031 -975
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/api_pb2.pyi +77 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/api_pb2_grpc.py +66 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/api_pb2_grpc.pyi +20 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/modal_api_grpc.py +2 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_version/__init__.py +1 -1
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/LICENSE +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/README.md +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/__init__.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/__main__.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_clustered_functions.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_clustered_functions.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_container_entrypoint.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_functions.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_ipython.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_location.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_object.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_output.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_partial_function.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_pty.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_resolver.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_resources.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_runtime/__init__.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_runtime/asgi.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_runtime/container_io_manager.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_runtime/container_io_manager.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_runtime/execution_context.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_runtime/execution_context.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_runtime/gpu_memory_snapshot.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_runtime/telemetry.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_runtime/user_code_imports.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_serialization.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_traceback.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_tunnel.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_tunnel.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_type_manager.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/__init__.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/app_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/async_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/auth_token_manager.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/blob_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/bytes_io_segment_payload.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/deprecation.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/docker_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/function_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/git_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/grpc_testing.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/grpc_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/hash_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/http_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/jwt_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/logger.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/mount_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/name_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/package_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/pattern_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/rand_pb_testing.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/shell_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_utils/time_utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_vendor/__init__.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_vendor/a2wsgi_wsgi.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_vendor/cloudpickle.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_vendor/tblib.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/_watcher.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/app.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/app.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/builder/2023.12.312.txt +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/builder/2023.12.txt +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/builder/2024.04.txt +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/builder/2024.10.txt +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/builder/2025.06.txt +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/builder/PREVIEW.txt +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/builder/README.md +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/builder/base-images.json +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/call_graph.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/__init__.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/_download.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/_traceback.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/app.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/cluster.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/config.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/container.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/dict.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/entry_point.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/environment.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/import_refs.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/launch.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/network_file_system.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/profile.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/programs/__init__.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/programs/launch_instance_ssh.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/programs/run_jupyter.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/programs/run_marimo.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/programs/vscode.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/queues.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/run.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/secret.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/token.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/utils.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cli/volume.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/client.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cloud_bucket_mount.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cloud_bucket_mount.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cls.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/cls.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/config.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/container_process.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/container_process.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/dict.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/dict.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/environments.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/environments.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/exception.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/experimental/__init__.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/experimental/flash.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/experimental/flash.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/experimental/ipython.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/file_io.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/file_io.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/file_pattern_matcher.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/functions.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/functions.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/gpu.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/image.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/image.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/io_streams.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/io_streams.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/mount.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/mount.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/network_file_system.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/network_file_system.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/object.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/object.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/output.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/parallel_map.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/parallel_map.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/partial_function.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/partial_function.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/proxy.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/proxy.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/py.typed +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/queue.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/queue.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/retries.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/runner.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/runner.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/running_app.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/sandbox.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/sandbox.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/schedule.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/scheduler_placement.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/secret.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/secret.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/serving.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/serving.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/snapshot.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/snapshot.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/stream_type.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/token_flow.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/token_flow.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/volume.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal/volume.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal.egg-info/SOURCES.txt +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal.egg-info/dependency_links.txt +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal.egg-info/entry_points.txt +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal.egg-info/requires.txt +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal.egg-info/top_level.txt +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_docs/__init__.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_docs/gen_cli_docs.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_docs/gen_reference_docs.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_docs/mdmd/__init__.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_docs/mdmd/mdmd.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_docs/mdmd/signatures.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/__init__.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/modal_options_grpc.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/options.proto +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/options_grpc.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/options_pb2.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/options_pb2.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/options_pb2_grpc.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/options_pb2_grpc.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/py.typed +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/sandbox_router.proto +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/sandbox_router_grpc.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/sandbox_router_pb2.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/sandbox_router_pb2.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/sandbox_router_pb2_grpc.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_proto/sandbox_router_pb2_grpc.pyi +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/modal_version/__main__.py +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/pyproject.toml +0 -0
- {modal-1.1.5.dev75 → modal-1.1.5.dev76}/setup.cfg +0 -0
|
@@ -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.1.5.
|
|
36
|
+
version: str = "1.1.5.dev76",
|
|
37
37
|
):
|
|
38
38
|
"""mdmd:hidden
|
|
39
39
|
The Modal client object is not intended to be instantiated directly by users.
|
|
@@ -164,7 +164,7 @@ class Client:
|
|
|
164
164
|
server_url: str,
|
|
165
165
|
client_type: int,
|
|
166
166
|
credentials: typing.Optional[tuple[str, str]],
|
|
167
|
-
version: str = "1.1.5.
|
|
167
|
+
version: str = "1.1.5.dev76",
|
|
168
168
|
):
|
|
169
169
|
"""mdmd:hidden
|
|
170
170
|
The Modal client object is not intended to be instantiated directly by users.
|
|
@@ -399,6 +399,14 @@ message AppGetOrCreateResponse {
|
|
|
399
399
|
string app_id = 1;
|
|
400
400
|
}
|
|
401
401
|
|
|
402
|
+
message AppGetTagsRequest {
|
|
403
|
+
string app_id = 1;
|
|
404
|
+
}
|
|
405
|
+
|
|
406
|
+
message AppGetTagsResponse {
|
|
407
|
+
map<string, string> tags = 1;
|
|
408
|
+
}
|
|
409
|
+
|
|
402
410
|
message AppHeartbeatRequest {
|
|
403
411
|
string app_id = 1;
|
|
404
412
|
}
|
|
@@ -468,6 +476,12 @@ message AppSetObjectsRequest {
|
|
|
468
476
|
reserved 6;
|
|
469
477
|
}
|
|
470
478
|
|
|
479
|
+
message AppSetTagsRequest {
|
|
480
|
+
string app_id = 1;
|
|
481
|
+
map<string, string> tags = 2;
|
|
482
|
+
}
|
|
483
|
+
|
|
484
|
+
|
|
471
485
|
message AppStopRequest {
|
|
472
486
|
string app_id = 1 [ (modal.options.audit_target_attr) = true ];
|
|
473
487
|
AppStopSource source = 2;
|
|
@@ -3582,12 +3596,14 @@ service ModalClient {
|
|
|
3582
3596
|
rpc AppGetLogs(AppGetLogsRequest) returns (stream TaskLogsBatch);
|
|
3583
3597
|
rpc AppGetObjects(AppGetObjectsRequest) returns (AppGetObjectsResponse);
|
|
3584
3598
|
rpc AppGetOrCreate(AppGetOrCreateRequest) returns (AppGetOrCreateResponse);
|
|
3599
|
+
rpc AppGetTags(AppGetTagsRequest) returns (AppGetTagsResponse);
|
|
3585
3600
|
rpc AppHeartbeat(AppHeartbeatRequest) returns (google.protobuf.Empty);
|
|
3586
3601
|
rpc AppList(AppListRequest) returns (AppListResponse);
|
|
3587
3602
|
rpc AppLookup(AppLookupRequest) returns (AppLookupResponse);
|
|
3588
3603
|
rpc AppPublish(AppPublishRequest) returns (AppPublishResponse);
|
|
3589
3604
|
rpc AppRollback(AppRollbackRequest) returns (google.protobuf.Empty);
|
|
3590
3605
|
rpc AppSetObjects(AppSetObjectsRequest) returns (google.protobuf.Empty);
|
|
3606
|
+
rpc AppSetTags(AppSetTagsRequest) returns (google.protobuf.Empty);
|
|
3591
3607
|
rpc AppStop(AppStopRequest) returns (google.protobuf.Empty);
|
|
3592
3608
|
|
|
3593
3609
|
// Input Plane
|
|
@@ -55,6 +55,10 @@ class ModalClientBase(abc.ABC):
|
|
|
55
55
|
async def AppGetOrCreate(self, stream: 'grpclib.server.Stream[modal_proto.api_pb2.AppGetOrCreateRequest, modal_proto.api_pb2.AppGetOrCreateResponse]') -> None:
|
|
56
56
|
pass
|
|
57
57
|
|
|
58
|
+
@abc.abstractmethod
|
|
59
|
+
async def AppGetTags(self, stream: 'grpclib.server.Stream[modal_proto.api_pb2.AppGetTagsRequest, modal_proto.api_pb2.AppGetTagsResponse]') -> None:
|
|
60
|
+
pass
|
|
61
|
+
|
|
58
62
|
@abc.abstractmethod
|
|
59
63
|
async def AppHeartbeat(self, stream: 'grpclib.server.Stream[modal_proto.api_pb2.AppHeartbeatRequest, google.protobuf.empty_pb2.Empty]') -> None:
|
|
60
64
|
pass
|
|
@@ -79,6 +83,10 @@ class ModalClientBase(abc.ABC):
|
|
|
79
83
|
async def AppSetObjects(self, stream: 'grpclib.server.Stream[modal_proto.api_pb2.AppSetObjectsRequest, google.protobuf.empty_pb2.Empty]') -> None:
|
|
80
84
|
pass
|
|
81
85
|
|
|
86
|
+
@abc.abstractmethod
|
|
87
|
+
async def AppSetTags(self, stream: 'grpclib.server.Stream[modal_proto.api_pb2.AppSetTagsRequest, google.protobuf.empty_pb2.Empty]') -> None:
|
|
88
|
+
pass
|
|
89
|
+
|
|
82
90
|
@abc.abstractmethod
|
|
83
91
|
async def AppStop(self, stream: 'grpclib.server.Stream[modal_proto.api_pb2.AppStopRequest, google.protobuf.empty_pb2.Empty]') -> None:
|
|
84
92
|
pass
|
|
@@ -767,6 +775,12 @@ class ModalClientBase(abc.ABC):
|
|
|
767
775
|
modal_proto.api_pb2.AppGetOrCreateRequest,
|
|
768
776
|
modal_proto.api_pb2.AppGetOrCreateResponse,
|
|
769
777
|
),
|
|
778
|
+
'/modal.client.ModalClient/AppGetTags': grpclib.const.Handler(
|
|
779
|
+
self.AppGetTags,
|
|
780
|
+
grpclib.const.Cardinality.UNARY_UNARY,
|
|
781
|
+
modal_proto.api_pb2.AppGetTagsRequest,
|
|
782
|
+
modal_proto.api_pb2.AppGetTagsResponse,
|
|
783
|
+
),
|
|
770
784
|
'/modal.client.ModalClient/AppHeartbeat': grpclib.const.Handler(
|
|
771
785
|
self.AppHeartbeat,
|
|
772
786
|
grpclib.const.Cardinality.UNARY_UNARY,
|
|
@@ -803,6 +817,12 @@ class ModalClientBase(abc.ABC):
|
|
|
803
817
|
modal_proto.api_pb2.AppSetObjectsRequest,
|
|
804
818
|
google.protobuf.empty_pb2.Empty,
|
|
805
819
|
),
|
|
820
|
+
'/modal.client.ModalClient/AppSetTags': grpclib.const.Handler(
|
|
821
|
+
self.AppSetTags,
|
|
822
|
+
grpclib.const.Cardinality.UNARY_UNARY,
|
|
823
|
+
modal_proto.api_pb2.AppSetTagsRequest,
|
|
824
|
+
google.protobuf.empty_pb2.Empty,
|
|
825
|
+
),
|
|
806
826
|
'/modal.client.ModalClient/AppStop': grpclib.const.Handler(
|
|
807
827
|
self.AppStop,
|
|
808
828
|
grpclib.const.Cardinality.UNARY_UNARY,
|
|
@@ -1811,6 +1831,12 @@ class ModalClientStub:
|
|
|
1811
1831
|
modal_proto.api_pb2.AppGetOrCreateRequest,
|
|
1812
1832
|
modal_proto.api_pb2.AppGetOrCreateResponse,
|
|
1813
1833
|
)
|
|
1834
|
+
self.AppGetTags = grpclib.client.UnaryUnaryMethod(
|
|
1835
|
+
channel,
|
|
1836
|
+
'/modal.client.ModalClient/AppGetTags',
|
|
1837
|
+
modal_proto.api_pb2.AppGetTagsRequest,
|
|
1838
|
+
modal_proto.api_pb2.AppGetTagsResponse,
|
|
1839
|
+
)
|
|
1814
1840
|
self.AppHeartbeat = grpclib.client.UnaryUnaryMethod(
|
|
1815
1841
|
channel,
|
|
1816
1842
|
'/modal.client.ModalClient/AppHeartbeat',
|
|
@@ -1847,6 +1873,12 @@ class ModalClientStub:
|
|
|
1847
1873
|
modal_proto.api_pb2.AppSetObjectsRequest,
|
|
1848
1874
|
google.protobuf.empty_pb2.Empty,
|
|
1849
1875
|
)
|
|
1876
|
+
self.AppSetTags = grpclib.client.UnaryUnaryMethod(
|
|
1877
|
+
channel,
|
|
1878
|
+
'/modal.client.ModalClient/AppSetTags',
|
|
1879
|
+
modal_proto.api_pb2.AppSetTagsRequest,
|
|
1880
|
+
google.protobuf.empty_pb2.Empty,
|
|
1881
|
+
)
|
|
1850
1882
|
self.AppStop = grpclib.client.UnaryUnaryMethod(
|
|
1851
1883
|
channel,
|
|
1852
1884
|
'/modal.client.ModalClient/AppStop',
|