modal 1.1.2.dev44__py3-none-any.whl → 1.1.3__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.
modal_proto/api_pb2.pyi CHANGED
@@ -1959,8 +1959,7 @@ class AttemptStartResponse(google.protobuf.message.Message):
1959
1959
  RETRY_POLICY_FIELD_NUMBER: builtins.int
1960
1960
  attempt_token: builtins.str
1961
1961
  @property
1962
- def retry_policy(self) -> global___FunctionRetryPolicy:
1963
- """TODO(ben-okeefe) TODO(nathan): Not currently used"""
1962
+ def retry_policy(self) -> global___FunctionRetryPolicy: ...
1964
1963
  def __init__(
1965
1964
  self,
1966
1965
  *,
@@ -6379,6 +6378,8 @@ class GenericResult(google.protobuf.message.Message):
6379
6378
  Terminates the function and all remaining inputs.
6380
6379
  """
6381
6380
  GENERIC_STATUS_INTERNAL_FAILURE: GenericResult._GenericStatus.ValueType # 6
6381
+ GENERIC_STATUS_IDLE_TIMEOUT: GenericResult._GenericStatus.ValueType # 7
6382
+ """Used when sandboxes are terminated due to idle_timeout"""
6382
6383
 
6383
6384
  class GenericStatus(_GenericStatus, metaclass=_GenericStatusEnumTypeWrapper): ...
6384
6385
  GENERIC_STATUS_UNSPECIFIED: GenericResult.GenericStatus.ValueType # 0
@@ -6392,6 +6393,8 @@ class GenericResult(google.protobuf.message.Message):
6392
6393
  Terminates the function and all remaining inputs.
6393
6394
  """
6394
6395
  GENERIC_STATUS_INTERNAL_FAILURE: GenericResult.GenericStatus.ValueType # 6
6396
+ GENERIC_STATUS_IDLE_TIMEOUT: GenericResult.GenericStatus.ValueType # 7
6397
+ """Used when sandboxes are terminated due to idle_timeout"""
6395
6398
 
6396
6399
  STATUS_FIELD_NUMBER: builtins.int
6397
6400
  EXCEPTION_FIELD_NUMBER: builtins.int
@@ -7007,8 +7010,7 @@ class MapStartOrContinueResponse(google.protobuf.message.Message):
7007
7010
  @property
7008
7011
  def attempt_tokens(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
7009
7012
  @property
7010
- def retry_policy(self) -> global___FunctionRetryPolicy:
7011
- """TODO(ben-okeefe): Not currently used"""
7013
+ def retry_policy(self) -> global___FunctionRetryPolicy: ...
7012
7014
  def __init__(
7013
7015
  self,
7014
7016
  *,
@@ -8385,6 +8387,7 @@ class Sandbox(google.protobuf.message.Message):
8385
8387
  NAME_FIELD_NUMBER: builtins.int
8386
8388
  EXPERIMENTAL_OPTIONS_FIELD_NUMBER: builtins.int
8387
8389
  PRELOAD_PATH_PREFIXES_FIELD_NUMBER: builtins.int
8390
+ IDLE_TIMEOUT_SECS_FIELD_NUMBER: builtins.int
8388
8391
  @property
8389
8392
  def entrypoint_args(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]: ...
8390
8393
  @property
@@ -8397,6 +8400,7 @@ class Sandbox(google.protobuf.message.Message):
8397
8400
  cloud_provider: global___CloudProvider.ValueType
8398
8401
  """Deprecated at some point"""
8399
8402
  timeout_secs: builtins.int
8403
+ """The max lifetime of a sandbox in seconds."""
8400
8404
  workdir: builtins.str
8401
8405
  @property
8402
8406
  def nfs_mounts(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SharedVolumeMount]: ...
@@ -8448,6 +8452,8 @@ class Sandbox(google.protobuf.message.Message):
8448
8452
  @property
8449
8453
  def preload_path_prefixes(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
8450
8454
  """Internal use only."""
8455
+ idle_timeout_secs: builtins.int
8456
+ """Optional idle timeout in seconds. If set, the sandbox will be terminated after being idle for this duration."""
8451
8457
  def __init__(
8452
8458
  self,
8453
8459
  *,
@@ -8481,9 +8487,12 @@ class Sandbox(google.protobuf.message.Message):
8481
8487
  name: builtins.str | None = ...,
8482
8488
  experimental_options: collections.abc.Mapping[builtins.str, builtins.bool] | None = ...,
8483
8489
  preload_path_prefixes: collections.abc.Iterable[builtins.str] | None = ...,
8490
+ idle_timeout_secs: builtins.int | None = ...,
8484
8491
  ) -> None: ...
8485
- def HasField(self, field_name: typing_extensions.Literal["_name", b"_name", "_proxy_id", b"_proxy_id", "_runsc_runtime_version", b"_runsc_runtime_version", "_runtime", b"_runtime", "_scheduler_placement", b"_scheduler_placement", "_snapshot_version", b"_snapshot_version", "_workdir", b"_workdir", "name", b"name", "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", "runsc_runtime_version", b"runsc_runtime_version", "runtime", b"runtime", "scheduler_placement", b"scheduler_placement", "snapshot_version", b"snapshot_version", "workdir", b"workdir"]) -> builtins.bool: ...
8486
- def ClearField(self, field_name: typing_extensions.Literal["_name", b"_name", "_proxy_id", b"_proxy_id", "_runsc_runtime_version", b"_runsc_runtime_version", "_runtime", b"_runtime", "_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", "experimental_options", b"experimental_options", "i6pn_enabled", b"i6pn_enabled", "image_id", b"image_id", "mount_ids", b"mount_ids", "name", b"name", "network_access", b"network_access", "nfs_mounts", b"nfs_mounts", "open_ports", b"open_ports", "open_ports_oneof", b"open_ports_oneof", "preload_path_prefixes", b"preload_path_prefixes", "proxy_id", b"proxy_id", "pty_info", b"pty_info", "resources", b"resources", "runsc_runtime_version", b"runsc_runtime_version", "runtime", b"runtime", "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", "verbose", b"verbose", "volume_mounts", b"volume_mounts", "workdir", b"workdir", "worker_id", b"worker_id"]) -> None: ...
8492
+ def HasField(self, field_name: typing_extensions.Literal["_idle_timeout_secs", b"_idle_timeout_secs", "_name", b"_name", "_proxy_id", b"_proxy_id", "_runsc_runtime_version", b"_runsc_runtime_version", "_runtime", b"_runtime", "_scheduler_placement", b"_scheduler_placement", "_snapshot_version", b"_snapshot_version", "_workdir", b"_workdir", "idle_timeout_secs", b"idle_timeout_secs", "name", b"name", "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", "runsc_runtime_version", b"runsc_runtime_version", "runtime", b"runtime", "scheduler_placement", b"scheduler_placement", "snapshot_version", b"snapshot_version", "workdir", b"workdir"]) -> builtins.bool: ...
8493
+ def ClearField(self, field_name: typing_extensions.Literal["_idle_timeout_secs", b"_idle_timeout_secs", "_name", b"_name", "_proxy_id", b"_proxy_id", "_runsc_runtime_version", b"_runsc_runtime_version", "_runtime", b"_runtime", "_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", "experimental_options", b"experimental_options", "i6pn_enabled", b"i6pn_enabled", "idle_timeout_secs", b"idle_timeout_secs", "image_id", b"image_id", "mount_ids", b"mount_ids", "name", b"name", "network_access", b"network_access", "nfs_mounts", b"nfs_mounts", "open_ports", b"open_ports", "open_ports_oneof", b"open_ports_oneof", "preload_path_prefixes", b"preload_path_prefixes", "proxy_id", b"proxy_id", "pty_info", b"pty_info", "resources", b"resources", "runsc_runtime_version", b"runsc_runtime_version", "runtime", b"runtime", "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", "verbose", b"verbose", "volume_mounts", b"volume_mounts", "workdir", b"workdir", "worker_id", b"worker_id"]) -> None: ...
8494
+ @typing.overload
8495
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_idle_timeout_secs", b"_idle_timeout_secs"]) -> typing_extensions.Literal["idle_timeout_secs"] | None: ...
8487
8496
  @typing.overload
8488
8497
  def WhichOneof(self, oneof_group: typing_extensions.Literal["_name", b"_name"]) -> typing_extensions.Literal["name"] | None: ...
8489
8498
  @typing.overload
modal_version/__init__.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # Copyright Modal Labs 2025
2
2
  """Supplies the current version of the modal client library."""
3
3
 
4
- __version__ = "1.1.2.dev44"
4
+ __version__ = "1.1.3"