modal 1.4.3.dev15__tar.gz → 1.4.3.dev16__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.4.3.dev15 → modal-1.4.3.dev16}/PKG-INFO +1 -1
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_container_entrypoint.py +21 -1
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/client.pyi +2 -2
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal.egg-info/PKG-INFO +1 -1
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_version/__init__.py +1 -1
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/LICENSE +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/README.md +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/__init__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/__main__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_billing.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_clustered_functions.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_clustered_functions.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_environments.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_functions.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_grpc_client.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_ipython.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_load_context.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_location.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_logs.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_object.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_output/__init__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_output/manager.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_output/pty.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_output/rich.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_output/status.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_partial_function.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_resolver.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_resources.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_runtime/__init__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_runtime/asgi.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_runtime/container_io_manager.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_runtime/container_io_manager.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_runtime/execution_context.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_runtime/execution_context.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_runtime/gpu_memory_snapshot.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_runtime/telemetry.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_runtime/user_code_event_loop.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_runtime/user_code_imports.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_serialization.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_server.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_traceback.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_tunnel.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_tunnel.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_type_manager.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/__init__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/app_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/async_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/auth_token_manager.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/blob_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/browser_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/bytes_io_segment_payload.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/deprecation.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/docker_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/function_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/git_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/grpc_testing.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/grpc_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/hash_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/http_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/jwt_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/logger.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/mount_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/name_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/package_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/pattern_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/rand_pb_testing.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/sandbox_fs_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/shell_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/task_command_router_client.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_utils/time_utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_vendor/__init__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_vendor/a2wsgi_wsgi.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_vendor/cloudpickle.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_vendor/tblib.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_vendor/version.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/_watcher.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/app.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/app.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/billing.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/builder/2023.12.312.txt +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/builder/2023.12.txt +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/builder/2024.04.txt +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/builder/2024.10.txt +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/builder/2025.06.txt +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/builder/PREVIEW.txt +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/builder/README.md +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/builder/base-images.json +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/call_graph.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/__init__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/_download.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/_help.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/_traceback.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/app.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/billing.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/bootstrap.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/changelog.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/cluster.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/config.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/container.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/dashboard.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/dict.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/entry_point.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/environment.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/import_refs.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/launch.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/logo.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/network_file_system.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/profile.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/programs/__init__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/programs/run_jupyter.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/programs/vscode.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/queues.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/run.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/secret.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/selector.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/shell.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/token.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/utils.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cli/volume.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/client.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cloud_bucket_mount.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cloud_bucket_mount.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cls.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/cls.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/config.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/container_process.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/container_process.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/dict.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/dict.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/environments.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/environments.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/exception.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/experimental/__init__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/experimental/flash.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/experimental/flash.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/experimental/ipython.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/file_io.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/file_io.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/file_pattern_matcher.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/functions.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/functions.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/image.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/image.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/io_streams.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/io_streams.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/mount.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/mount.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/network_file_system.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/network_file_system.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/object.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/object.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/output.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/parallel_map.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/parallel_map.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/partial_function.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/partial_function.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/proxy.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/proxy.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/py.typed +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/queue.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/queue.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/retries.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/runner.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/runner.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/running_app.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/sandbox.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/sandbox.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/sandbox_fs.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/sandbox_fs.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/schedule.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/scheduler_placement.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/secret.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/secret.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/server.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/server.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/serving.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/serving.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/snapshot.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/snapshot.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/stream_type.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/token_flow.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/token_flow.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/volume.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal/volume.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal.egg-info/SOURCES.txt +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal.egg-info/dependency_links.txt +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal.egg-info/entry_points.txt +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal.egg-info/requires.txt +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal.egg-info/top_level.txt +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_docs/__init__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_docs/gen_cli_docs.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_docs/gen_cli_docs_main.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_docs/gen_reference_docs.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_docs/gen_reference_docs_main.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_docs/mdmd/__init__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_docs/mdmd/mdmd.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_docs/mdmd/signatures.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/__init__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/api_grpc.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/api_pb2.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/api_pb2.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/api_pb2_grpc.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/api_pb2_grpc.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/modal_api_grpc.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/py.typed +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/task_command_router_grpc.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/task_command_router_pb2.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/task_command_router_pb2.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/task_command_router_pb2_grpc.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_proto/task_command_router_pb2_grpc.pyi +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/modal_version/__main__.py +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/pyproject.toml +0 -0
- {modal-1.4.3.dev15 → modal-1.4.3.dev16}/setup.cfg +0 -0
|
@@ -94,6 +94,23 @@ class DaemonizedThreadPool:
|
|
|
94
94
|
self.inputs.put((func, args))
|
|
95
95
|
|
|
96
96
|
|
|
97
|
+
def call_server(user_code_event_loop: UserCodeEventLoop):
|
|
98
|
+
async def run():
|
|
99
|
+
exit_event = asyncio.Event()
|
|
100
|
+
|
|
101
|
+
def _on_sigterm():
|
|
102
|
+
logger.info("server_received_sigterm")
|
|
103
|
+
exit_event.set()
|
|
104
|
+
|
|
105
|
+
user_code_event_loop.loop.add_signal_handler(signal.SIGTERM, _on_sigterm)
|
|
106
|
+
try:
|
|
107
|
+
await exit_event.wait()
|
|
108
|
+
finally:
|
|
109
|
+
user_code_event_loop.loop.remove_signal_handler(signal.SIGTERM)
|
|
110
|
+
|
|
111
|
+
user_code_event_loop.run(run())
|
|
112
|
+
|
|
113
|
+
|
|
97
114
|
def call_function(
|
|
98
115
|
user_code_event_loop: UserCodeEventLoop,
|
|
99
116
|
container_io_manager: "modal._runtime.container_io_manager.ContainerIOManager",
|
|
@@ -385,7 +402,10 @@ def main(container_args: api_pb2.ContainerArguments, client: Client):
|
|
|
385
402
|
)
|
|
386
403
|
|
|
387
404
|
with service.execution_context(event_loop, container_io_manager) as finalized_functions:
|
|
388
|
-
|
|
405
|
+
if function_def.is_server:
|
|
406
|
+
call_server(event_loop)
|
|
407
|
+
else:
|
|
408
|
+
call_function(event_loop, container_io_manager, finalized_functions, batch_max_size, batch_wait_ms)
|
|
389
409
|
|
|
390
410
|
|
|
391
411
|
if __name__ == "__main__":
|
|
@@ -35,7 +35,7 @@ class _Client:
|
|
|
35
35
|
server_url: str,
|
|
36
36
|
client_type: int,
|
|
37
37
|
credentials: typing.Optional[tuple[str, str]],
|
|
38
|
-
version: str = "1.4.3.
|
|
38
|
+
version: str = "1.4.3.dev16",
|
|
39
39
|
):
|
|
40
40
|
"""mdmd:hidden
|
|
41
41
|
The Modal client object is not intended to be instantiated directly by users.
|
|
@@ -175,7 +175,7 @@ class Client:
|
|
|
175
175
|
server_url: str,
|
|
176
176
|
client_type: int,
|
|
177
177
|
credentials: typing.Optional[tuple[str, str]],
|
|
178
|
-
version: str = "1.4.3.
|
|
178
|
+
version: str = "1.4.3.dev16",
|
|
179
179
|
):
|
|
180
180
|
"""mdmd:hidden
|
|
181
181
|
The Modal client object is not intended to be instantiated directly by users.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|