modal 0.72.5__py3-none-any.whl → 0.72.48__py3-none-any.whl

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.
Files changed (73) hide show
  1. modal/_container_entrypoint.py +5 -10
  2. modal/_object.py +297 -0
  3. modal/_resolver.py +7 -5
  4. modal/_runtime/container_io_manager.py +0 -11
  5. modal/_runtime/user_code_imports.py +7 -7
  6. modal/_serialization.py +4 -3
  7. modal/_tunnel.py +1 -1
  8. modal/app.py +14 -61
  9. modal/app.pyi +25 -25
  10. modal/cli/app.py +3 -2
  11. modal/cli/container.py +1 -1
  12. modal/cli/import_refs.py +185 -113
  13. modal/cli/launch.py +10 -5
  14. modal/cli/programs/run_jupyter.py +2 -2
  15. modal/cli/programs/vscode.py +3 -3
  16. modal/cli/run.py +134 -68
  17. modal/client.py +1 -0
  18. modal/client.pyi +18 -14
  19. modal/cloud_bucket_mount.py +4 -0
  20. modal/cloud_bucket_mount.pyi +4 -0
  21. modal/cls.py +33 -5
  22. modal/cls.pyi +20 -5
  23. modal/container_process.pyi +8 -6
  24. modal/dict.py +1 -1
  25. modal/dict.pyi +32 -29
  26. modal/environments.py +1 -1
  27. modal/environments.pyi +2 -1
  28. modal/experimental.py +47 -11
  29. modal/experimental.pyi +29 -0
  30. modal/file_io.pyi +30 -28
  31. modal/file_pattern_matcher.py +3 -4
  32. modal/functions.py +31 -23
  33. modal/functions.pyi +57 -50
  34. modal/gpu.py +19 -26
  35. modal/image.py +47 -19
  36. modal/image.pyi +28 -21
  37. modal/io_streams.pyi +14 -12
  38. modal/mount.py +14 -5
  39. modal/mount.pyi +28 -25
  40. modal/network_file_system.py +7 -7
  41. modal/network_file_system.pyi +27 -24
  42. modal/object.py +2 -265
  43. modal/object.pyi +46 -130
  44. modal/parallel_map.py +2 -2
  45. modal/parallel_map.pyi +10 -7
  46. modal/partial_function.py +22 -3
  47. modal/partial_function.pyi +45 -27
  48. modal/proxy.py +1 -1
  49. modal/proxy.pyi +2 -1
  50. modal/queue.py +1 -1
  51. modal/queue.pyi +26 -23
  52. modal/runner.py +14 -3
  53. modal/sandbox.py +11 -7
  54. modal/sandbox.pyi +30 -27
  55. modal/secret.py +1 -1
  56. modal/secret.pyi +2 -1
  57. modal/token_flow.pyi +6 -4
  58. modal/volume.py +1 -1
  59. modal/volume.pyi +36 -33
  60. {modal-0.72.5.dist-info → modal-0.72.48.dist-info}/METADATA +2 -2
  61. {modal-0.72.5.dist-info → modal-0.72.48.dist-info}/RECORD +73 -71
  62. modal_proto/api.proto +151 -4
  63. modal_proto/api_grpc.py +113 -0
  64. modal_proto/api_pb2.py +998 -795
  65. modal_proto/api_pb2.pyi +430 -11
  66. modal_proto/api_pb2_grpc.py +233 -1
  67. modal_proto/api_pb2_grpc.pyi +75 -3
  68. modal_proto/modal_api_grpc.py +7 -0
  69. modal_version/_version_generated.py +1 -1
  70. {modal-0.72.5.dist-info → modal-0.72.48.dist-info}/LICENSE +0 -0
  71. {modal-0.72.5.dist-info → modal-0.72.48.dist-info}/WHEEL +0 -0
  72. {modal-0.72.5.dist-info → modal-0.72.48.dist-info}/entry_points.txt +0 -0
  73. {modal-0.72.5.dist-info → modal-0.72.48.dist-info}/top_level.txt +0 -0
modal_proto/api_pb2.pyi CHANGED
@@ -8,6 +8,7 @@ import google.protobuf.descriptor
8
8
  import google.protobuf.internal.containers
9
9
  import google.protobuf.internal.enum_type_wrapper
10
10
  import google.protobuf.message
11
+ import google.protobuf.struct_pb2
11
12
  import google.protobuf.wrappers_pb2
12
13
  import sys
13
14
  import typing
@@ -179,6 +180,7 @@ class _ClientTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._Enu
179
180
  CLIENT_TYPE_WORKER: _ClientType.ValueType # 2
180
181
  CLIENT_TYPE_CONTAINER: _ClientType.ValueType # 3
181
182
  CLIENT_TYPE_WEB_SERVER: _ClientType.ValueType # 5
183
+ CLIENT_TYPE_NOTEBOOK_KERNEL: _ClientType.ValueType # 6
182
184
 
183
185
  class ClientType(_ClientType, metaclass=_ClientTypeEnumTypeWrapper): ...
184
186
 
@@ -187,6 +189,7 @@ CLIENT_TYPE_CLIENT: ClientType.ValueType # 1
187
189
  CLIENT_TYPE_WORKER: ClientType.ValueType # 2
188
190
  CLIENT_TYPE_CONTAINER: ClientType.ValueType # 3
189
191
  CLIENT_TYPE_WEB_SERVER: ClientType.ValueType # 5
192
+ CLIENT_TYPE_NOTEBOOK_KERNEL: ClientType.ValueType # 6
190
193
  global___ClientType = ClientType
191
194
 
192
195
  class _CloudProvider:
@@ -361,6 +364,7 @@ class _GPUTypeEnumTypeWrapper(google.protobuf.internal.enum_type_wrapper._EnumTy
361
364
  GPU_TYPE_L4: _GPUType.ValueType # 9
362
365
  GPU_TYPE_H100: _GPUType.ValueType # 10
363
366
  GPU_TYPE_L40S: _GPUType.ValueType # 11
367
+ GPU_TYPE_H200: _GPUType.ValueType # 12
364
368
 
365
369
  class GPUType(_GPUType, metaclass=_GPUTypeEnumTypeWrapper): ...
366
370
 
@@ -373,6 +377,7 @@ GPU_TYPE_A100_80GB: GPUType.ValueType # 8
373
377
  GPU_TYPE_L4: GPUType.ValueType # 9
374
378
  GPU_TYPE_H100: GPUType.ValueType # 10
375
379
  GPU_TYPE_L40S: GPUType.ValueType # 11
380
+ GPU_TYPE_H200: GPUType.ValueType # 12
376
381
  global___GPUType = GPUType
377
382
 
378
383
  class _ObjectCreationType:
@@ -943,6 +948,7 @@ class AppGetLogsRequest(google.protobuf.message.Message):
943
948
  FUNCTION_ID_FIELD_NUMBER: builtins.int
944
949
  INPUT_ID_FIELD_NUMBER: builtins.int
945
950
  TASK_ID_FIELD_NUMBER: builtins.int
951
+ FUNCTION_CALL_ID_FIELD_NUMBER: builtins.int
946
952
  FILE_DESCRIPTOR_FIELD_NUMBER: builtins.int
947
953
  app_id: builtins.str
948
954
  timeout: builtins.float
@@ -950,6 +956,7 @@ class AppGetLogsRequest(google.protobuf.message.Message):
950
956
  function_id: builtins.str
951
957
  input_id: builtins.str
952
958
  task_id: builtins.str
959
+ function_call_id: builtins.str
953
960
  file_descriptor: global___FileDescriptor.ValueType
954
961
  def __init__(
955
962
  self,
@@ -960,9 +967,10 @@ class AppGetLogsRequest(google.protobuf.message.Message):
960
967
  function_id: builtins.str = ...,
961
968
  input_id: builtins.str = ...,
962
969
  task_id: builtins.str = ...,
970
+ function_call_id: builtins.str = ...,
963
971
  file_descriptor: global___FileDescriptor.ValueType = ...,
964
972
  ) -> None: ...
965
- def ClearField(self, field_name: typing_extensions.Literal["app_id", b"app_id", "file_descriptor", b"file_descriptor", "function_id", b"function_id", "input_id", b"input_id", "last_entry_id", b"last_entry_id", "task_id", b"task_id", "timeout", b"timeout"]) -> None: ...
973
+ def ClearField(self, field_name: typing_extensions.Literal["app_id", b"app_id", "file_descriptor", b"file_descriptor", "function_call_id", b"function_call_id", "function_id", b"function_id", "input_id", b"input_id", "last_entry_id", b"last_entry_id", "task_id", b"task_id", "timeout", b"timeout"]) -> None: ...
966
974
 
967
975
  global___AppGetLogsRequest = AppGetLogsRequest
968
976
 
@@ -1895,6 +1903,7 @@ class CheckpointInfo(google.protobuf.message.Message):
1895
1903
  SIZE_FIELD_NUMBER: builtins.int
1896
1904
  CHECKSUM_IS_FILE_INDEX_FIELD_NUMBER: builtins.int
1897
1905
  ORIGINAL_TASK_ID_FIELD_NUMBER: builtins.int
1906
+ SNAPSHOT_VERSION_FIELD_NUMBER: builtins.int
1898
1907
  checksum: builtins.str
1899
1908
  status: global___CheckpointStatus.ValueType
1900
1909
  checkpoint_id: builtins.str
@@ -1902,6 +1911,8 @@ class CheckpointInfo(google.protobuf.message.Message):
1902
1911
  size: builtins.int
1903
1912
  checksum_is_file_index: builtins.bool
1904
1913
  original_task_id: builtins.str
1914
+ snapshot_version: builtins.int
1915
+ """snapshot version used to take the checkpoint"""
1905
1916
  def __init__(
1906
1917
  self,
1907
1918
  *,
@@ -1912,8 +1923,9 @@ class CheckpointInfo(google.protobuf.message.Message):
1912
1923
  size: builtins.int = ...,
1913
1924
  checksum_is_file_index: builtins.bool = ...,
1914
1925
  original_task_id: builtins.str = ...,
1926
+ snapshot_version: builtins.int = ...,
1915
1927
  ) -> None: ...
1916
- def ClearField(self, field_name: typing_extensions.Literal["checkpoint_id", b"checkpoint_id", "checksum", b"checksum", "checksum_is_file_index", b"checksum_is_file_index", "original_task_id", b"original_task_id", "runtime_fingerprint", b"runtime_fingerprint", "size", b"size", "status", b"status"]) -> None: ...
1928
+ def ClearField(self, field_name: typing_extensions.Literal["checkpoint_id", b"checkpoint_id", "checksum", b"checksum", "checksum_is_file_index", b"checksum_is_file_index", "original_task_id", b"original_task_id", "runtime_fingerprint", b"runtime_fingerprint", "size", b"size", "snapshot_version", b"snapshot_version", "status", b"status"]) -> None: ...
1917
1929
 
1918
1930
  global___CheckpointInfo = CheckpointInfo
1919
1931
 
@@ -2228,6 +2240,7 @@ class CloudBucketMount(google.protobuf.message.Message):
2228
2240
  REQUESTER_PAYS_FIELD_NUMBER: builtins.int
2229
2241
  BUCKET_ENDPOINT_URL_FIELD_NUMBER: builtins.int
2230
2242
  KEY_PREFIX_FIELD_NUMBER: builtins.int
2243
+ OIDC_AUTH_ROLE_ARN_FIELD_NUMBER: builtins.int
2231
2244
  bucket_name: builtins.str
2232
2245
  mount_path: builtins.str
2233
2246
  credentials_secret_id: builtins.str
@@ -2236,6 +2249,7 @@ class CloudBucketMount(google.protobuf.message.Message):
2236
2249
  requester_pays: builtins.bool
2237
2250
  bucket_endpoint_url: builtins.str
2238
2251
  key_prefix: builtins.str
2252
+ oidc_auth_role_arn: builtins.str
2239
2253
  def __init__(
2240
2254
  self,
2241
2255
  *,
@@ -2247,13 +2261,16 @@ class CloudBucketMount(google.protobuf.message.Message):
2247
2261
  requester_pays: builtins.bool = ...,
2248
2262
  bucket_endpoint_url: builtins.str | None = ...,
2249
2263
  key_prefix: builtins.str | None = ...,
2264
+ oidc_auth_role_arn: builtins.str | None = ...,
2250
2265
  ) -> None: ...
2251
- def HasField(self, field_name: typing_extensions.Literal["_bucket_endpoint_url", b"_bucket_endpoint_url", "_key_prefix", b"_key_prefix", "bucket_endpoint_url", b"bucket_endpoint_url", "key_prefix", b"key_prefix"]) -> builtins.bool: ...
2252
- def ClearField(self, field_name: typing_extensions.Literal["_bucket_endpoint_url", b"_bucket_endpoint_url", "_key_prefix", b"_key_prefix", "bucket_endpoint_url", b"bucket_endpoint_url", "bucket_name", b"bucket_name", "bucket_type", b"bucket_type", "credentials_secret_id", b"credentials_secret_id", "key_prefix", b"key_prefix", "mount_path", b"mount_path", "read_only", b"read_only", "requester_pays", b"requester_pays"]) -> None: ...
2266
+ def HasField(self, field_name: typing_extensions.Literal["_bucket_endpoint_url", b"_bucket_endpoint_url", "_key_prefix", b"_key_prefix", "_oidc_auth_role_arn", b"_oidc_auth_role_arn", "bucket_endpoint_url", b"bucket_endpoint_url", "key_prefix", b"key_prefix", "oidc_auth_role_arn", b"oidc_auth_role_arn"]) -> builtins.bool: ...
2267
+ def ClearField(self, field_name: typing_extensions.Literal["_bucket_endpoint_url", b"_bucket_endpoint_url", "_key_prefix", b"_key_prefix", "_oidc_auth_role_arn", b"_oidc_auth_role_arn", "bucket_endpoint_url", b"bucket_endpoint_url", "bucket_name", b"bucket_name", "bucket_type", b"bucket_type", "credentials_secret_id", b"credentials_secret_id", "key_prefix", b"key_prefix", "mount_path", b"mount_path", "oidc_auth_role_arn", b"oidc_auth_role_arn", "read_only", b"read_only", "requester_pays", b"requester_pays"]) -> None: ...
2253
2268
  @typing.overload
2254
2269
  def WhichOneof(self, oneof_group: typing_extensions.Literal["_bucket_endpoint_url", b"_bucket_endpoint_url"]) -> typing_extensions.Literal["bucket_endpoint_url"] | None: ...
2255
2270
  @typing.overload
2256
2271
  def WhichOneof(self, oneof_group: typing_extensions.Literal["_key_prefix", b"_key_prefix"]) -> typing_extensions.Literal["key_prefix"] | None: ...
2272
+ @typing.overload
2273
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_oidc_auth_role_arn", b"_oidc_auth_role_arn"]) -> typing_extensions.Literal["oidc_auth_role_arn"] | None: ...
2257
2274
 
2258
2275
  global___CloudBucketMount = CloudBucketMount
2259
2276
 
@@ -3766,6 +3783,7 @@ class Function(google.protobuf.message.Message):
3766
3783
  METHOD_DEFINITIONS_FIELD_NUMBER: builtins.int
3767
3784
  METHOD_DEFINITIONS_SET_FIELD_NUMBER: builtins.int
3768
3785
  _EXPERIMENTAL_CUSTOM_SCALING_FIELD_NUMBER: builtins.int
3786
+ CLOUD_PROVIDER_STR_FIELD_NUMBER: builtins.int
3769
3787
  module_name: builtins.str
3770
3788
  function_name: builtins.str
3771
3789
  @property
@@ -3794,6 +3812,7 @@ class Function(google.protobuf.message.Message):
3794
3812
  class_serialized: builtins.bytes
3795
3813
  task_idle_timeout_secs: builtins.int
3796
3814
  cloud_provider: global___CloudProvider.ValueType
3815
+ """Deprecated at some point"""
3797
3816
  warm_pool_size: builtins.int
3798
3817
  web_url: builtins.str
3799
3818
  @property
@@ -3874,6 +3893,8 @@ class Function(google.protobuf.message.Message):
3874
3893
  """Mapping of method names to method definitions, only non-empty for class service functions"""
3875
3894
  method_definitions_set: builtins.bool
3876
3895
  _experimental_custom_scaling: builtins.bool
3896
+ cloud_provider_str: builtins.str
3897
+ """Supersedes cloud_provider"""
3877
3898
  def __init__(
3878
3899
  self,
3879
3900
  *,
@@ -3940,9 +3961,10 @@ class Function(google.protobuf.message.Message):
3940
3961
  method_definitions: collections.abc.Mapping[builtins.str, global___MethodDefinition] | None = ...,
3941
3962
  method_definitions_set: builtins.bool = ...,
3942
3963
  _experimental_custom_scaling: builtins.bool = ...,
3964
+ cloud_provider_str: builtins.str = ...,
3943
3965
  ) -> None: ...
3944
3966
  def HasField(self, field_name: typing_extensions.Literal["X_experimental_proxy_ip", b"X_experimental_proxy_ip", "_cloud_provider", b"_cloud_provider", "_experimental_proxy_ip", b"_experimental_proxy_ip", "_proxy_id", b"_proxy_id", "_scheduler_placement", b"_scheduler_placement", "checkpoint", b"checkpoint", "class_parameter_info", b"class_parameter_info", "cloud_provider", b"cloud_provider", "proxy_id", b"proxy_id", "pty_info", b"pty_info", "rate_limit", b"rate_limit", "resources", b"resources", "retry_policy", b"retry_policy", "schedule", b"schedule", "scheduler_placement", b"scheduler_placement", "web_url_info", b"web_url_info", "webhook_config", b"webhook_config"]) -> builtins.bool: ...
3945
- def ClearField(self, field_name: typing_extensions.Literal["X_experimental_proxy_ip", b"X_experimental_proxy_ip", "_cloud_provider", b"_cloud_provider", "_experimental_buffer_containers", b"_experimental_buffer_containers", "_experimental_concurrent_cancellations", b"_experimental_concurrent_cancellations", "_experimental_custom_scaling", b"_experimental_custom_scaling", "_experimental_group_size", b"_experimental_group_size", "_experimental_proxy_ip", b"_experimental_proxy_ip", "_experimental_task_templates", b"_experimental_task_templates", "_experimental_task_templates_enabled", b"_experimental_task_templates_enabled", "_proxy_id", b"_proxy_id", "_scheduler_placement", b"_scheduler_placement", "app_name", b"app_name", "batch_linger_ms", b"batch_linger_ms", "batch_max_size", b"batch_max_size", "block_network", b"block_network", "checkpoint", b"checkpoint", "checkpointing_enabled", b"checkpointing_enabled", "class_parameter_info", b"class_parameter_info", "class_serialized", b"class_serialized", "cloud_bucket_mounts", b"cloud_bucket_mounts", "cloud_provider", b"cloud_provider", "concurrency_limit", b"concurrency_limit", "custom_domain_info", b"custom_domain_info", "definition_type", b"definition_type", "function_name", b"function_name", "function_serialized", b"function_serialized", "function_type", b"function_type", "i6pn_enabled", b"i6pn_enabled", "image_id", b"image_id", "is_auto_snapshot", b"is_auto_snapshot", "is_builder_function", b"is_builder_function", "is_checkpointing_function", b"is_checkpointing_function", "is_class", b"is_class", "is_method", b"is_method", "max_concurrent_inputs", b"max_concurrent_inputs", "max_inputs", b"max_inputs", "method_definitions", b"method_definitions", "method_definitions_set", b"method_definitions_set", "module_name", b"module_name", "mount_ids", b"mount_ids", "object_dependencies", b"object_dependencies", "proxy_id", b"proxy_id", "pty_info", b"pty_info", "rate_limit", b"rate_limit", "resources", b"resources", "retry_policy", b"retry_policy", "runtime", b"runtime", "runtime_debug", b"runtime_debug", "runtime_perf_record", b"runtime_perf_record", "s3_mounts", b"s3_mounts", "schedule", b"schedule", "scheduler_placement", b"scheduler_placement", "secret_ids", b"secret_ids", "shared_volume_mounts", b"shared_volume_mounts", "snapshot_debug", b"snapshot_debug", "target_concurrent_inputs", b"target_concurrent_inputs", "task_idle_timeout_secs", b"task_idle_timeout_secs", "timeout_secs", b"timeout_secs", "untrusted", b"untrusted", "use_function_id", b"use_function_id", "use_method_name", b"use_method_name", "volume_mounts", b"volume_mounts", "warm_pool_size", b"warm_pool_size", "web_url", b"web_url", "web_url_info", b"web_url_info", "webhook_config", b"webhook_config", "worker_id", b"worker_id"]) -> None: ...
3967
+ def ClearField(self, field_name: typing_extensions.Literal["X_experimental_proxy_ip", b"X_experimental_proxy_ip", "_cloud_provider", b"_cloud_provider", "_experimental_buffer_containers", b"_experimental_buffer_containers", "_experimental_concurrent_cancellations", b"_experimental_concurrent_cancellations", "_experimental_custom_scaling", b"_experimental_custom_scaling", "_experimental_group_size", b"_experimental_group_size", "_experimental_proxy_ip", b"_experimental_proxy_ip", "_experimental_task_templates", b"_experimental_task_templates", "_experimental_task_templates_enabled", b"_experimental_task_templates_enabled", "_proxy_id", b"_proxy_id", "_scheduler_placement", b"_scheduler_placement", "app_name", b"app_name", "batch_linger_ms", b"batch_linger_ms", "batch_max_size", b"batch_max_size", "block_network", b"block_network", "checkpoint", b"checkpoint", "checkpointing_enabled", b"checkpointing_enabled", "class_parameter_info", b"class_parameter_info", "class_serialized", b"class_serialized", "cloud_bucket_mounts", b"cloud_bucket_mounts", "cloud_provider", b"cloud_provider", "cloud_provider_str", b"cloud_provider_str", "concurrency_limit", b"concurrency_limit", "custom_domain_info", b"custom_domain_info", "definition_type", b"definition_type", "function_name", b"function_name", "function_serialized", b"function_serialized", "function_type", b"function_type", "i6pn_enabled", b"i6pn_enabled", "image_id", b"image_id", "is_auto_snapshot", b"is_auto_snapshot", "is_builder_function", b"is_builder_function", "is_checkpointing_function", b"is_checkpointing_function", "is_class", b"is_class", "is_method", b"is_method", "max_concurrent_inputs", b"max_concurrent_inputs", "max_inputs", b"max_inputs", "method_definitions", b"method_definitions", "method_definitions_set", b"method_definitions_set", "module_name", b"module_name", "mount_ids", b"mount_ids", "object_dependencies", b"object_dependencies", "proxy_id", b"proxy_id", "pty_info", b"pty_info", "rate_limit", b"rate_limit", "resources", b"resources", "retry_policy", b"retry_policy", "runtime", b"runtime", "runtime_debug", b"runtime_debug", "runtime_perf_record", b"runtime_perf_record", "s3_mounts", b"s3_mounts", "schedule", b"schedule", "scheduler_placement", b"scheduler_placement", "secret_ids", b"secret_ids", "shared_volume_mounts", b"shared_volume_mounts", "snapshot_debug", b"snapshot_debug", "target_concurrent_inputs", b"target_concurrent_inputs", "task_idle_timeout_secs", b"task_idle_timeout_secs", "timeout_secs", b"timeout_secs", "untrusted", b"untrusted", "use_function_id", b"use_function_id", "use_method_name", b"use_method_name", "volume_mounts", b"volume_mounts", "warm_pool_size", b"warm_pool_size", "web_url", b"web_url", "web_url_info", b"web_url_info", "webhook_config", b"webhook_config", "worker_id", b"worker_id"]) -> None: ...
3946
3968
  @typing.overload
3947
3969
  def WhichOneof(self, oneof_group: typing_extensions.Literal["X_experimental_proxy_ip", b"X_experimental_proxy_ip"]) -> typing_extensions.Literal["_experimental_proxy_ip"] | None: ...
3948
3970
  @typing.overload
@@ -5327,17 +5349,21 @@ class GPUConfig(google.protobuf.message.Message):
5327
5349
  TYPE_FIELD_NUMBER: builtins.int
5328
5350
  COUNT_FIELD_NUMBER: builtins.int
5329
5351
  MEMORY_FIELD_NUMBER: builtins.int
5352
+ GPU_TYPE_FIELD_NUMBER: builtins.int
5330
5353
  type: global___GPUType.ValueType
5354
+ """Deprecated, at some point"""
5331
5355
  count: builtins.int
5332
5356
  memory: builtins.int
5357
+ gpu_type: builtins.str
5333
5358
  def __init__(
5334
5359
  self,
5335
5360
  *,
5336
5361
  type: global___GPUType.ValueType = ...,
5337
5362
  count: builtins.int = ...,
5338
5363
  memory: builtins.int = ...,
5364
+ gpu_type: builtins.str = ...,
5339
5365
  ) -> None: ...
5340
- def ClearField(self, field_name: typing_extensions.Literal["count", b"count", "memory", b"memory", "type", b"type"]) -> None: ...
5366
+ def ClearField(self, field_name: typing_extensions.Literal["count", b"count", "gpu_type", b"gpu_type", "memory", b"memory", "type", b"type"]) -> None: ...
5341
5367
 
5342
5368
  global___GPUConfig = GPUConfig
5343
5369
 
@@ -6035,6 +6061,198 @@ class NetworkAccess(google.protobuf.message.Message):
6035
6061
 
6036
6062
  global___NetworkAccess = NetworkAccess
6037
6063
 
6064
+ class NotebookKernelPublishResultsRequest(google.protobuf.message.Message):
6065
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
6066
+
6067
+ class ExecuteReply(google.protobuf.message.Message):
6068
+ """See kernelshim.py for the differences between this and `ExecuteResult`.
6069
+ https://jupyter-client.readthedocs.io/en/stable/messaging.html#execution-results
6070
+ """
6071
+
6072
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
6073
+
6074
+ STATUS_FIELD_NUMBER: builtins.int
6075
+ EXECUTION_COUNT_FIELD_NUMBER: builtins.int
6076
+ status: builtins.str
6077
+ execution_count: builtins.int
6078
+ def __init__(
6079
+ self,
6080
+ *,
6081
+ status: builtins.str = ...,
6082
+ execution_count: builtins.int = ...,
6083
+ ) -> None: ...
6084
+ def ClearField(self, field_name: typing_extensions.Literal["execution_count", b"execution_count", "status", b"status"]) -> None: ...
6085
+
6086
+ class CellResult(google.protobuf.message.Message):
6087
+ """IOPub message or reply received from the kernel for a cell."""
6088
+
6089
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
6090
+
6091
+ CELL_ID_FIELD_NUMBER: builtins.int
6092
+ OUTPUT_FIELD_NUMBER: builtins.int
6093
+ CLEAR_OUTPUT_FIELD_NUMBER: builtins.int
6094
+ EXECUTE_REPLY_FIELD_NUMBER: builtins.int
6095
+ cell_id: builtins.str
6096
+ @property
6097
+ def output(self) -> global___NotebookOutput:
6098
+ """Persistent output that is saved in the notebook."""
6099
+ clear_output: builtins.bool
6100
+ """Clear all previous outputs of the cell."""
6101
+ @property
6102
+ def execute_reply(self) -> global___NotebookKernelPublishResultsRequest.ExecuteReply:
6103
+ """Cell has finished executing, return the kernel's execute_reply."""
6104
+ def __init__(
6105
+ self,
6106
+ *,
6107
+ cell_id: builtins.str = ...,
6108
+ output: global___NotebookOutput | None = ...,
6109
+ clear_output: builtins.bool = ...,
6110
+ execute_reply: global___NotebookKernelPublishResultsRequest.ExecuteReply | None = ...,
6111
+ ) -> None: ...
6112
+ def HasField(self, field_name: typing_extensions.Literal["clear_output", b"clear_output", "execute_reply", b"execute_reply", "output", b"output", "result_type", b"result_type"]) -> builtins.bool: ...
6113
+ def ClearField(self, field_name: typing_extensions.Literal["cell_id", b"cell_id", "clear_output", b"clear_output", "execute_reply", b"execute_reply", "output", b"output", "result_type", b"result_type"]) -> None: ...
6114
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["result_type", b"result_type"]) -> typing_extensions.Literal["output", "clear_output", "execute_reply"] | None: ...
6115
+
6116
+ NOTEBOOK_ID_FIELD_NUMBER: builtins.int
6117
+ RESULTS_FIELD_NUMBER: builtins.int
6118
+ notebook_id: builtins.str
6119
+ @property
6120
+ def results(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___NotebookKernelPublishResultsRequest.CellResult]: ...
6121
+ def __init__(
6122
+ self,
6123
+ *,
6124
+ notebook_id: builtins.str = ...,
6125
+ results: collections.abc.Iterable[global___NotebookKernelPublishResultsRequest.CellResult] | None = ...,
6126
+ ) -> None: ...
6127
+ def ClearField(self, field_name: typing_extensions.Literal["notebook_id", b"notebook_id", "results", b"results"]) -> None: ...
6128
+
6129
+ global___NotebookKernelPublishResultsRequest = NotebookKernelPublishResultsRequest
6130
+
6131
+ class NotebookOutput(google.protobuf.message.Message):
6132
+ """A single output from a notebook. When you execute a cell, it produces an
6133
+ array of these outputs as the code runs.
6134
+
6135
+ https://github.com/jupyter/nbformat/blob/v5.10.4/nbformat/v4/nbformat.v4.schema.json#L301-L309
6136
+ """
6137
+
6138
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
6139
+
6140
+ class ExecuteResult(google.protobuf.message.Message):
6141
+ """Result of executing a code cell."""
6142
+
6143
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
6144
+
6145
+ EXECUTION_COUNT_FIELD_NUMBER: builtins.int
6146
+ DATA_FIELD_NUMBER: builtins.int
6147
+ METADATA_FIELD_NUMBER: builtins.int
6148
+ execution_count: builtins.int
6149
+ @property
6150
+ def data(self) -> google.protobuf.struct_pb2.Struct:
6151
+ """mimebundle"""
6152
+ @property
6153
+ def metadata(self) -> google.protobuf.struct_pb2.Struct: ...
6154
+ def __init__(
6155
+ self,
6156
+ *,
6157
+ execution_count: builtins.int = ...,
6158
+ data: google.protobuf.struct_pb2.Struct | None = ...,
6159
+ metadata: google.protobuf.struct_pb2.Struct | None = ...,
6160
+ ) -> None: ...
6161
+ def HasField(self, field_name: typing_extensions.Literal["data", b"data", "metadata", b"metadata"]) -> builtins.bool: ...
6162
+ def ClearField(self, field_name: typing_extensions.Literal["data", b"data", "execution_count", b"execution_count", "metadata", b"metadata"]) -> None: ...
6163
+
6164
+ class DisplayData(google.protobuf.message.Message):
6165
+ """Data displayed as a result of code cell execution."""
6166
+
6167
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
6168
+
6169
+ DATA_FIELD_NUMBER: builtins.int
6170
+ METADATA_FIELD_NUMBER: builtins.int
6171
+ TRANSIENT_DISPLAY_ID_FIELD_NUMBER: builtins.int
6172
+ @property
6173
+ def data(self) -> google.protobuf.struct_pb2.Struct:
6174
+ """mimebundle"""
6175
+ @property
6176
+ def metadata(self) -> google.protobuf.struct_pb2.Struct: ...
6177
+ transient_display_id: builtins.str
6178
+ """This should not be included in saved notebook."""
6179
+ def __init__(
6180
+ self,
6181
+ *,
6182
+ data: google.protobuf.struct_pb2.Struct | None = ...,
6183
+ metadata: google.protobuf.struct_pb2.Struct | None = ...,
6184
+ transient_display_id: builtins.str | None = ...,
6185
+ ) -> None: ...
6186
+ def HasField(self, field_name: typing_extensions.Literal["_transient_display_id", b"_transient_display_id", "data", b"data", "metadata", b"metadata", "transient_display_id", b"transient_display_id"]) -> builtins.bool: ...
6187
+ def ClearField(self, field_name: typing_extensions.Literal["_transient_display_id", b"_transient_display_id", "data", b"data", "metadata", b"metadata", "transient_display_id", b"transient_display_id"]) -> None: ...
6188
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_transient_display_id", b"_transient_display_id"]) -> typing_extensions.Literal["transient_display_id"] | None: ...
6189
+
6190
+ class Stream(google.protobuf.message.Message):
6191
+ """Stream output from a code cell (stdout / stderr)."""
6192
+
6193
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
6194
+
6195
+ NAME_FIELD_NUMBER: builtins.int
6196
+ TEXT_FIELD_NUMBER: builtins.int
6197
+ name: builtins.str
6198
+ """stdout | stderr"""
6199
+ text: builtins.str
6200
+ """multiline_string"""
6201
+ def __init__(
6202
+ self,
6203
+ *,
6204
+ name: builtins.str = ...,
6205
+ text: builtins.str = ...,
6206
+ ) -> None: ...
6207
+ def ClearField(self, field_name: typing_extensions.Literal["name", b"name", "text", b"text"]) -> None: ...
6208
+
6209
+ class Error(google.protobuf.message.Message):
6210
+ """Output of an error that occurred during code cell execution."""
6211
+
6212
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
6213
+
6214
+ ENAME_FIELD_NUMBER: builtins.int
6215
+ EVALUE_FIELD_NUMBER: builtins.int
6216
+ TRACEBACK_FIELD_NUMBER: builtins.int
6217
+ ename: builtins.str
6218
+ evalue: builtins.str
6219
+ @property
6220
+ def traceback(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
6221
+ def __init__(
6222
+ self,
6223
+ *,
6224
+ ename: builtins.str = ...,
6225
+ evalue: builtins.str = ...,
6226
+ traceback: collections.abc.Iterable[builtins.str] | None = ...,
6227
+ ) -> None: ...
6228
+ def ClearField(self, field_name: typing_extensions.Literal["ename", b"ename", "evalue", b"evalue", "traceback", b"traceback"]) -> None: ...
6229
+
6230
+ EXECUTE_RESULT_FIELD_NUMBER: builtins.int
6231
+ DISPLAY_DATA_FIELD_NUMBER: builtins.int
6232
+ STREAM_FIELD_NUMBER: builtins.int
6233
+ ERROR_FIELD_NUMBER: builtins.int
6234
+ @property
6235
+ def execute_result(self) -> global___NotebookOutput.ExecuteResult: ...
6236
+ @property
6237
+ def display_data(self) -> global___NotebookOutput.DisplayData: ...
6238
+ @property
6239
+ def stream(self) -> global___NotebookOutput.Stream: ...
6240
+ @property
6241
+ def error(self) -> global___NotebookOutput.Error: ...
6242
+ def __init__(
6243
+ self,
6244
+ *,
6245
+ execute_result: global___NotebookOutput.ExecuteResult | None = ...,
6246
+ display_data: global___NotebookOutput.DisplayData | None = ...,
6247
+ stream: global___NotebookOutput.Stream | None = ...,
6248
+ error: global___NotebookOutput.Error | None = ...,
6249
+ ) -> None: ...
6250
+ def HasField(self, field_name: typing_extensions.Literal["display_data", b"display_data", "error", b"error", "execute_result", b"execute_result", "output_type", b"output_type", "stream", b"stream"]) -> builtins.bool: ...
6251
+ def ClearField(self, field_name: typing_extensions.Literal["display_data", b"display_data", "error", b"error", "execute_result", b"execute_result", "output_type", b"output_type", "stream", b"stream"]) -> None: ...
6252
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["output_type", b"output_type"]) -> typing_extensions.Literal["execute_result", "display_data", "stream", "error"] | None: ...
6253
+
6254
+ global___NotebookOutput = NotebookOutput
6255
+
6038
6256
  class Object(google.protobuf.message.Message):
6039
6257
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
6040
6258
 
@@ -6194,6 +6412,36 @@ class Proxy(google.protobuf.message.Message):
6194
6412
 
6195
6413
  global___Proxy = Proxy
6196
6414
 
6415
+ class ProxyAddIpRequest(google.protobuf.message.Message):
6416
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
6417
+
6418
+ PROXY_ID_FIELD_NUMBER: builtins.int
6419
+ proxy_id: builtins.str
6420
+ def __init__(
6421
+ self,
6422
+ *,
6423
+ proxy_id: builtins.str = ...,
6424
+ ) -> None: ...
6425
+ def ClearField(self, field_name: typing_extensions.Literal["proxy_id", b"proxy_id"]) -> None: ...
6426
+
6427
+ global___ProxyAddIpRequest = ProxyAddIpRequest
6428
+
6429
+ class ProxyAddIpResponse(google.protobuf.message.Message):
6430
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
6431
+
6432
+ PROXY_IP_FIELD_NUMBER: builtins.int
6433
+ @property
6434
+ def proxy_ip(self) -> global___ProxyIp: ...
6435
+ def __init__(
6436
+ self,
6437
+ *,
6438
+ proxy_ip: global___ProxyIp | None = ...,
6439
+ ) -> None: ...
6440
+ def HasField(self, field_name: typing_extensions.Literal["proxy_ip", b"proxy_ip"]) -> builtins.bool: ...
6441
+ def ClearField(self, field_name: typing_extensions.Literal["proxy_ip", b"proxy_ip"]) -> None: ...
6442
+
6443
+ global___ProxyAddIpResponse = ProxyAddIpResponse
6444
+
6197
6445
  class ProxyCreateRequest(google.protobuf.message.Message):
6198
6446
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
6199
6447
 
@@ -6376,6 +6624,20 @@ class ProxyListResponse(google.protobuf.message.Message):
6376
6624
 
6377
6625
  global___ProxyListResponse = ProxyListResponse
6378
6626
 
6627
+ class ProxyRemoveIpRequest(google.protobuf.message.Message):
6628
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
6629
+
6630
+ PROXY_IP_FIELD_NUMBER: builtins.int
6631
+ proxy_ip: builtins.str
6632
+ def __init__(
6633
+ self,
6634
+ *,
6635
+ proxy_ip: builtins.str = ...,
6636
+ ) -> None: ...
6637
+ def ClearField(self, field_name: typing_extensions.Literal["proxy_ip", b"proxy_ip"]) -> None: ...
6638
+
6639
+ global___ProxyRemoveIpRequest = ProxyRemoveIpRequest
6640
+
6379
6641
  class QueueClearRequest(google.protobuf.message.Message):
6380
6642
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
6381
6643
 
@@ -6846,6 +7108,9 @@ class Sandbox(google.protobuf.message.Message):
6846
7108
  I6PN_ENABLED_FIELD_NUMBER: builtins.int
6847
7109
  NETWORK_ACCESS_FIELD_NUMBER: builtins.int
6848
7110
  PROXY_ID_FIELD_NUMBER: builtins.int
7111
+ ENABLE_SNAPSHOT_FIELD_NUMBER: builtins.int
7112
+ SNAPSHOT_VERSION_FIELD_NUMBER: builtins.int
7113
+ CLOUD_PROVIDER_STR_FIELD_NUMBER: builtins.int
6849
7114
  @property
6850
7115
  def entrypoint_args(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
6851
7116
  @property
@@ -6856,6 +7121,7 @@ class Sandbox(google.protobuf.message.Message):
6856
7121
  @property
6857
7122
  def resources(self) -> global___Resources: ...
6858
7123
  cloud_provider: global___CloudProvider.ValueType
7124
+ """Deprecated at some point"""
6859
7125
  timeout_secs: builtins.int
6860
7126
  workdir: builtins.str
6861
7127
  @property
@@ -6882,6 +7148,16 @@ class Sandbox(google.protobuf.message.Message):
6882
7148
  def network_access(self) -> global___NetworkAccess:
6883
7149
  """Network access configuration beyond simple allow/block."""
6884
7150
  proxy_id: builtins.str
7151
+ enable_snapshot: builtins.bool
7152
+ """Enable snapshotting the sandbox (both memory and filesystem).
7153
+ This doesn't need to be enabled to save the filesystem as an image (i.e. a filesystem-only snapshot).
7154
+ """
7155
+ snapshot_version: builtins.int
7156
+ """Used to pin gVisor version for memory-snapshottable sandboxes.
7157
+ This field is set by the server, not the client.
7158
+ """
7159
+ cloud_provider_str: builtins.str
7160
+ """Supersedes cloud_provider"""
6885
7161
  def __init__(
6886
7162
  self,
6887
7163
  *,
@@ -6906,14 +7182,19 @@ class Sandbox(google.protobuf.message.Message):
6906
7182
  i6pn_enabled: builtins.bool = ...,
6907
7183
  network_access: global___NetworkAccess | None = ...,
6908
7184
  proxy_id: builtins.str | None = ...,
7185
+ enable_snapshot: builtins.bool = ...,
7186
+ snapshot_version: builtins.int | None = ...,
7187
+ cloud_provider_str: builtins.str = ...,
6909
7188
  ) -> None: ...
6910
- def HasField(self, field_name: typing_extensions.Literal["_proxy_id", b"_proxy_id", "_scheduler_placement", b"_scheduler_placement", "_workdir", b"_workdir", "network_access", b"network_access", "open_ports", b"open_ports", "open_ports_oneof", b"open_ports_oneof", "proxy_id", b"proxy_id", "pty_info", b"pty_info", "resources", b"resources", "scheduler_placement", b"scheduler_placement", "workdir", b"workdir"]) -> builtins.bool: ...
6911
- def ClearField(self, field_name: typing_extensions.Literal["_proxy_id", b"_proxy_id", "_scheduler_placement", b"_scheduler_placement", "_workdir", b"_workdir", "block_network", b"block_network", "cloud_bucket_mounts", b"cloud_bucket_mounts", "cloud_provider", b"cloud_provider", "entrypoint_args", b"entrypoint_args", "i6pn_enabled", b"i6pn_enabled", "image_id", b"image_id", "mount_ids", b"mount_ids", "network_access", b"network_access", "nfs_mounts", b"nfs_mounts", "open_ports", b"open_ports", "open_ports_oneof", b"open_ports_oneof", "proxy_id", b"proxy_id", "pty_info", b"pty_info", "resources", b"resources", "runtime_debug", b"runtime_debug", "s3_mounts", b"s3_mounts", "scheduler_placement", b"scheduler_placement", "secret_ids", b"secret_ids", "timeout_secs", b"timeout_secs", "volume_mounts", b"volume_mounts", "workdir", b"workdir", "worker_id", b"worker_id"]) -> None: ...
7189
+ def HasField(self, field_name: typing_extensions.Literal["_proxy_id", b"_proxy_id", "_scheduler_placement", b"_scheduler_placement", "_snapshot_version", b"_snapshot_version", "_workdir", b"_workdir", "network_access", b"network_access", "open_ports", b"open_ports", "open_ports_oneof", b"open_ports_oneof", "proxy_id", b"proxy_id", "pty_info", b"pty_info", "resources", b"resources", "scheduler_placement", b"scheduler_placement", "snapshot_version", b"snapshot_version", "workdir", b"workdir"]) -> builtins.bool: ...
7190
+ def ClearField(self, field_name: typing_extensions.Literal["_proxy_id", b"_proxy_id", "_scheduler_placement", b"_scheduler_placement", "_snapshot_version", b"_snapshot_version", "_workdir", b"_workdir", "block_network", b"block_network", "cloud_bucket_mounts", b"cloud_bucket_mounts", "cloud_provider", b"cloud_provider", "cloud_provider_str", b"cloud_provider_str", "enable_snapshot", b"enable_snapshot", "entrypoint_args", b"entrypoint_args", "i6pn_enabled", b"i6pn_enabled", "image_id", b"image_id", "mount_ids", b"mount_ids", "network_access", b"network_access", "nfs_mounts", b"nfs_mounts", "open_ports", b"open_ports", "open_ports_oneof", b"open_ports_oneof", "proxy_id", b"proxy_id", "pty_info", b"pty_info", "resources", b"resources", "runtime_debug", b"runtime_debug", "s3_mounts", b"s3_mounts", "scheduler_placement", b"scheduler_placement", "secret_ids", b"secret_ids", "snapshot_version", b"snapshot_version", "timeout_secs", b"timeout_secs", "volume_mounts", b"volume_mounts", "workdir", b"workdir", "worker_id", b"worker_id"]) -> None: ...
6912
7191
  @typing.overload
6913
7192
  def WhichOneof(self, oneof_group: typing_extensions.Literal["_proxy_id", b"_proxy_id"]) -> typing_extensions.Literal["proxy_id"] | None: ...
6914
7193
  @typing.overload
6915
7194
  def WhichOneof(self, oneof_group: typing_extensions.Literal["_scheduler_placement", b"_scheduler_placement"]) -> typing_extensions.Literal["scheduler_placement"] | None: ...
6916
7195
  @typing.overload
7196
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_snapshot_version", b"_snapshot_version"]) -> typing_extensions.Literal["snapshot_version"] | None: ...
7197
+ @typing.overload
6917
7198
  def WhichOneof(self, oneof_group: typing_extensions.Literal["_workdir", b"_workdir"]) -> typing_extensions.Literal["workdir"] | None: ...
6918
7199
  @typing.overload
6919
7200
  def WhichOneof(self, oneof_group: typing_extensions.Literal["open_ports_oneof", b"open_ports_oneof"]) -> typing_extensions.Literal["open_ports"] | None: ...
@@ -6983,13 +7264,23 @@ class SandboxGetTaskIdRequest(google.protobuf.message.Message):
6983
7264
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
6984
7265
 
6985
7266
  SANDBOX_ID_FIELD_NUMBER: builtins.int
7267
+ TIMEOUT_FIELD_NUMBER: builtins.int
7268
+ WAIT_UNTIL_READY_FIELD_NUMBER: builtins.int
6986
7269
  sandbox_id: builtins.str
7270
+ timeout: builtins.float
7271
+ """Legacy clients do not provide a timeout. New clients must always provide a timeout."""
7272
+ wait_until_ready: builtins.bool
7273
+ """If true, waits until the container's postStart hook has been run before returning. Useful for detecting init failures."""
6987
7274
  def __init__(
6988
7275
  self,
6989
7276
  *,
6990
7277
  sandbox_id: builtins.str = ...,
7278
+ timeout: builtins.float | None = ...,
7279
+ wait_until_ready: builtins.bool = ...,
6991
7280
  ) -> None: ...
6992
- def ClearField(self, field_name: typing_extensions.Literal["sandbox_id", b"sandbox_id"]) -> None: ...
7281
+ def HasField(self, field_name: typing_extensions.Literal["_timeout", b"_timeout", "timeout", b"timeout"]) -> builtins.bool: ...
7282
+ def ClearField(self, field_name: typing_extensions.Literal["_timeout", b"_timeout", "sandbox_id", b"sandbox_id", "timeout", b"timeout", "wait_until_ready", b"wait_until_ready"]) -> None: ...
7283
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_timeout", b"_timeout"]) -> typing_extensions.Literal["timeout"] | None: ...
6993
7284
 
6994
7285
  global___SandboxGetTaskIdRequest = SandboxGetTaskIdRequest
6995
7286
 
@@ -6997,13 +7288,24 @@ class SandboxGetTaskIdResponse(google.protobuf.message.Message):
6997
7288
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
6998
7289
 
6999
7290
  TASK_ID_FIELD_NUMBER: builtins.int
7291
+ TASK_RESULT_FIELD_NUMBER: builtins.int
7000
7292
  task_id: builtins.str
7293
+ """This is None if the sandbox was terminated before a task could be scheduled."""
7294
+ @property
7295
+ def task_result(self) -> global___GenericResult:
7296
+ """If the task has already exited, this is the result."""
7001
7297
  def __init__(
7002
7298
  self,
7003
7299
  *,
7004
- task_id: builtins.str = ...,
7300
+ task_id: builtins.str | None = ...,
7301
+ task_result: global___GenericResult | None = ...,
7005
7302
  ) -> None: ...
7006
- def ClearField(self, field_name: typing_extensions.Literal["task_id", b"task_id"]) -> None: ...
7303
+ def HasField(self, field_name: typing_extensions.Literal["_task_id", b"_task_id", "_task_result", b"_task_result", "task_id", b"task_id", "task_result", b"task_result"]) -> builtins.bool: ...
7304
+ def ClearField(self, field_name: typing_extensions.Literal["_task_id", b"_task_id", "_task_result", b"_task_result", "task_id", b"task_id", "task_result", b"task_result"]) -> None: ...
7305
+ @typing.overload
7306
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_task_id", b"_task_id"]) -> typing_extensions.Literal["task_id"] | None: ...
7307
+ @typing.overload
7308
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_task_result", b"_task_result"]) -> typing_extensions.Literal["task_result"] | None: ...
7007
7309
 
7008
7310
  global___SandboxGetTaskIdResponse = SandboxGetTaskIdResponse
7009
7311
 
@@ -7124,6 +7426,62 @@ class SandboxListResponse(google.protobuf.message.Message):
7124
7426
 
7125
7427
  global___SandboxListResponse = SandboxListResponse
7126
7428
 
7429
+ class SandboxRestoreRequest(google.protobuf.message.Message):
7430
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
7431
+
7432
+ SNAPSHOT_ID_FIELD_NUMBER: builtins.int
7433
+ snapshot_id: builtins.str
7434
+ def __init__(
7435
+ self,
7436
+ *,
7437
+ snapshot_id: builtins.str = ...,
7438
+ ) -> None: ...
7439
+ def ClearField(self, field_name: typing_extensions.Literal["snapshot_id", b"snapshot_id"]) -> None: ...
7440
+
7441
+ global___SandboxRestoreRequest = SandboxRestoreRequest
7442
+
7443
+ class SandboxRestoreResponse(google.protobuf.message.Message):
7444
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
7445
+
7446
+ SANDBOX_ID_FIELD_NUMBER: builtins.int
7447
+ sandbox_id: builtins.str
7448
+ def __init__(
7449
+ self,
7450
+ *,
7451
+ sandbox_id: builtins.str = ...,
7452
+ ) -> None: ...
7453
+ def ClearField(self, field_name: typing_extensions.Literal["sandbox_id", b"sandbox_id"]) -> None: ...
7454
+
7455
+ global___SandboxRestoreResponse = SandboxRestoreResponse
7456
+
7457
+ class SandboxSnapshotFromIdRequest(google.protobuf.message.Message):
7458
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
7459
+
7460
+ SNAPSHOT_ID_FIELD_NUMBER: builtins.int
7461
+ snapshot_id: builtins.str
7462
+ def __init__(
7463
+ self,
7464
+ *,
7465
+ snapshot_id: builtins.str = ...,
7466
+ ) -> None: ...
7467
+ def ClearField(self, field_name: typing_extensions.Literal["snapshot_id", b"snapshot_id"]) -> None: ...
7468
+
7469
+ global___SandboxSnapshotFromIdRequest = SandboxSnapshotFromIdRequest
7470
+
7471
+ class SandboxSnapshotFromIdResponse(google.protobuf.message.Message):
7472
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
7473
+
7474
+ SNAPSHOT_ID_FIELD_NUMBER: builtins.int
7475
+ snapshot_id: builtins.str
7476
+ def __init__(
7477
+ self,
7478
+ *,
7479
+ snapshot_id: builtins.str = ...,
7480
+ ) -> None: ...
7481
+ def ClearField(self, field_name: typing_extensions.Literal["snapshot_id", b"snapshot_id"]) -> None: ...
7482
+
7483
+ global___SandboxSnapshotFromIdResponse = SandboxSnapshotFromIdResponse
7484
+
7127
7485
  class SandboxSnapshotFsRequest(google.protobuf.message.Message):
7128
7486
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
7129
7487
 
@@ -7165,6 +7523,67 @@ class SandboxSnapshotFsResponse(google.protobuf.message.Message):
7165
7523
 
7166
7524
  global___SandboxSnapshotFsResponse = SandboxSnapshotFsResponse
7167
7525
 
7526
+ class SandboxSnapshotRequest(google.protobuf.message.Message):
7527
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
7528
+
7529
+ SANDBOX_ID_FIELD_NUMBER: builtins.int
7530
+ sandbox_id: builtins.str
7531
+ def __init__(
7532
+ self,
7533
+ *,
7534
+ sandbox_id: builtins.str = ...,
7535
+ ) -> None: ...
7536
+ def ClearField(self, field_name: typing_extensions.Literal["sandbox_id", b"sandbox_id"]) -> None: ...
7537
+
7538
+ global___SandboxSnapshotRequest = SandboxSnapshotRequest
7539
+
7540
+ class SandboxSnapshotResponse(google.protobuf.message.Message):
7541
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
7542
+
7543
+ SNAPSHOT_ID_FIELD_NUMBER: builtins.int
7544
+ snapshot_id: builtins.str
7545
+ def __init__(
7546
+ self,
7547
+ *,
7548
+ snapshot_id: builtins.str = ...,
7549
+ ) -> None: ...
7550
+ def ClearField(self, field_name: typing_extensions.Literal["snapshot_id", b"snapshot_id"]) -> None: ...
7551
+
7552
+ global___SandboxSnapshotResponse = SandboxSnapshotResponse
7553
+
7554
+ class SandboxSnapshotWaitRequest(google.protobuf.message.Message):
7555
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
7556
+
7557
+ SNAPSHOT_ID_FIELD_NUMBER: builtins.int
7558
+ TIMEOUT_FIELD_NUMBER: builtins.int
7559
+ snapshot_id: builtins.str
7560
+ timeout: builtins.float
7561
+ def __init__(
7562
+ self,
7563
+ *,
7564
+ snapshot_id: builtins.str = ...,
7565
+ timeout: builtins.float = ...,
7566
+ ) -> None: ...
7567
+ def ClearField(self, field_name: typing_extensions.Literal["snapshot_id", b"snapshot_id", "timeout", b"timeout"]) -> None: ...
7568
+
7569
+ global___SandboxSnapshotWaitRequest = SandboxSnapshotWaitRequest
7570
+
7571
+ class SandboxSnapshotWaitResponse(google.protobuf.message.Message):
7572
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
7573
+
7574
+ RESULT_FIELD_NUMBER: builtins.int
7575
+ @property
7576
+ def result(self) -> global___GenericResult: ...
7577
+ def __init__(
7578
+ self,
7579
+ *,
7580
+ result: global___GenericResult | None = ...,
7581
+ ) -> None: ...
7582
+ def HasField(self, field_name: typing_extensions.Literal["result", b"result"]) -> builtins.bool: ...
7583
+ def ClearField(self, field_name: typing_extensions.Literal["result", b"result"]) -> None: ...
7584
+
7585
+ global___SandboxSnapshotWaitResponse = SandboxSnapshotWaitResponse
7586
+
7168
7587
  class SandboxStdinWriteRequest(google.protobuf.message.Message):
7169
7588
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
7170
7589