modal 0.73.19__py3-none-any.whl → 0.73.21__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
@@ -1770,6 +1770,52 @@ class Asgi(google.protobuf.message.Message):
1770
1770
 
1771
1771
  global___Asgi = Asgi
1772
1772
 
1773
+ class AutoscalerSettings(google.protobuf.message.Message):
1774
+ """A collection of user-configurable settings for Function autoscaling
1775
+ These are used for static configuration and for dynamic autoscaler updates
1776
+ """
1777
+
1778
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1779
+
1780
+ MIN_CONTAINERS_FIELD_NUMBER: builtins.int
1781
+ MAX_CONTAINERS_FIELD_NUMBER: builtins.int
1782
+ BUFFER_CONTAINERS_FIELD_NUMBER: builtins.int
1783
+ SCALEUP_WINDOW_FIELD_NUMBER: builtins.int
1784
+ SCALEDOWN_WINDOW_FIELD_NUMBER: builtins.int
1785
+ min_containers: builtins.int
1786
+ """Minimum containers when scale-to-zero is not deisired; pka "keep_warm" or "warm_pool_size" """
1787
+ max_containers: builtins.int
1788
+ """Limit on the number of containers that can be running for each Function; pka "concurrency_limit" """
1789
+ buffer_containers: builtins.int
1790
+ """Additional container to spin up when Function is active"""
1791
+ scaleup_window: builtins.int
1792
+ """Currently unused; a placeholder in case we decide to expose scaleup control to users"""
1793
+ scaledown_window: builtins.int
1794
+ """Maximum amount of time a container can be idle before being scaled down, in seconds; pka "container_idle_timeout" """
1795
+ def __init__(
1796
+ self,
1797
+ *,
1798
+ min_containers: builtins.int | None = ...,
1799
+ max_containers: builtins.int | None = ...,
1800
+ buffer_containers: builtins.int | None = ...,
1801
+ scaleup_window: builtins.int | None = ...,
1802
+ scaledown_window: builtins.int | None = ...,
1803
+ ) -> None: ...
1804
+ def HasField(self, field_name: typing_extensions.Literal["_buffer_containers", b"_buffer_containers", "_max_containers", b"_max_containers", "_min_containers", b"_min_containers", "_scaledown_window", b"_scaledown_window", "_scaleup_window", b"_scaleup_window", "buffer_containers", b"buffer_containers", "max_containers", b"max_containers", "min_containers", b"min_containers", "scaledown_window", b"scaledown_window", "scaleup_window", b"scaleup_window"]) -> builtins.bool: ...
1805
+ def ClearField(self, field_name: typing_extensions.Literal["_buffer_containers", b"_buffer_containers", "_max_containers", b"_max_containers", "_min_containers", b"_min_containers", "_scaledown_window", b"_scaledown_window", "_scaleup_window", b"_scaleup_window", "buffer_containers", b"buffer_containers", "max_containers", b"max_containers", "min_containers", b"min_containers", "scaledown_window", b"scaledown_window", "scaleup_window", b"scaleup_window"]) -> None: ...
1806
+ @typing.overload
1807
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_buffer_containers", b"_buffer_containers"]) -> typing_extensions.Literal["buffer_containers"] | None: ...
1808
+ @typing.overload
1809
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_max_containers", b"_max_containers"]) -> typing_extensions.Literal["max_containers"] | None: ...
1810
+ @typing.overload
1811
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_min_containers", b"_min_containers"]) -> typing_extensions.Literal["min_containers"] | None: ...
1812
+ @typing.overload
1813
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_scaledown_window", b"_scaledown_window"]) -> typing_extensions.Literal["scaledown_window"] | None: ...
1814
+ @typing.overload
1815
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_scaleup_window", b"_scaleup_window"]) -> typing_extensions.Literal["scaleup_window"] | None: ...
1816
+
1817
+ global___AutoscalerSettings = AutoscalerSettings
1818
+
1773
1819
  class BaseImage(google.protobuf.message.Message):
1774
1820
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
1775
1821
 
@@ -5354,15 +5400,20 @@ class FunctionUpdateSchedulingParamsRequest(google.protobuf.message.Message):
5354
5400
 
5355
5401
  FUNCTION_ID_FIELD_NUMBER: builtins.int
5356
5402
  WARM_POOL_SIZE_OVERRIDE_FIELD_NUMBER: builtins.int
5403
+ SETTINGS_FIELD_NUMBER: builtins.int
5357
5404
  function_id: builtins.str
5358
5405
  warm_pool_size_override: builtins.int
5406
+ @property
5407
+ def settings(self) -> global___AutoscalerSettings: ...
5359
5408
  def __init__(
5360
5409
  self,
5361
5410
  *,
5362
5411
  function_id: builtins.str = ...,
5363
5412
  warm_pool_size_override: builtins.int = ...,
5413
+ settings: global___AutoscalerSettings | None = ...,
5364
5414
  ) -> None: ...
5365
- def ClearField(self, field_name: typing_extensions.Literal["function_id", b"function_id", "warm_pool_size_override", b"warm_pool_size_override"]) -> None: ...
5415
+ def HasField(self, field_name: typing_extensions.Literal["settings", b"settings"]) -> builtins.bool: ...
5416
+ def ClearField(self, field_name: typing_extensions.Literal["function_id", b"function_id", "settings", b"settings", "warm_pool_size_override", b"warm_pool_size_override"]) -> None: ...
5366
5417
 
5367
5418
  global___FunctionUpdateSchedulingParamsRequest = FunctionUpdateSchedulingParamsRequest
5368
5419
 
@@ -1,4 +1,4 @@
1
1
  # Copyright Modal Labs 2025
2
2
 
3
3
  # Note: Reset this value to -1 whenever you make a minor `0.X` release of the client.
4
- build_number = 19 # git: 49a2185
4
+ build_number = 21 # git: d639a49