modAL 1.2.5.dev21__py3-none-any.whl → 1.2.5.dev23__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/client.pyi CHANGED
@@ -32,7 +32,7 @@ class _Client:
32
32
  server_url: str,
33
33
  client_type: int,
34
34
  credentials: typing.Optional[tuple[str, str]],
35
- version: str = "1.2.5.dev21",
35
+ version: str = "1.2.5.dev23",
36
36
  ):
37
37
  """mdmd:hidden
38
38
  The Modal client object is not intended to be instantiated directly by users.
@@ -163,7 +163,7 @@ class Client:
163
163
  server_url: str,
164
164
  client_type: int,
165
165
  credentials: typing.Optional[tuple[str, str]],
166
- version: str = "1.2.5.dev21",
166
+ version: str = "1.2.5.dev23",
167
167
  ):
168
168
  """mdmd:hidden
169
169
  The Modal client object is not intended to be instantiated directly by users.
@@ -655,6 +655,7 @@ def _http_server(
655
655
  proxy_regions: list[str] = [], # The regions to proxy the HTTP server to.
656
656
  startup_timeout: int = 30, # Maximum number of seconds to wait for the HTTP server to start.
657
657
  exit_grace_period: Optional[int] = None, # The time to wait for the HTTP server to exit gracefully.
658
+ h2_enabled: bool = False, # Whether to enable HTTP/2 support.
658
659
  ):
659
660
  """Decorator for Flash-enabled HTTP servers on Modal classes.
660
661
 
@@ -684,6 +685,7 @@ def _http_server(
684
685
  proxy_regions=proxy_regions,
685
686
  startup_timeout=startup_timeout or 0,
686
687
  exit_grace_period=exit_grace_period or 0,
688
+ h2_enabled=h2_enabled,
687
689
  )
688
690
  )
689
691
 
@@ -722,6 +724,7 @@ class _FlashContainerEntry:
722
724
  self.http_config.port,
723
725
  startup_timeout=self.http_config.startup_timeout,
724
726
  exit_grace_period=self.http_config.exit_grace_period,
727
+ h2_enabled=self.http_config.h2_enabled,
725
728
  )
726
729
 
727
730
  def stop(self):
@@ -398,6 +398,7 @@ def _http_server(
398
398
  proxy_regions: list[str] = [],
399
399
  startup_timeout: int = 30,
400
400
  exit_grace_period: typing.Optional[int] = None,
401
+ h2_enabled: bool = False,
401
402
  ):
402
403
  """Decorator for Flash-enabled HTTP servers on Modal classes.
403
404
 
@@ -415,6 +416,7 @@ def http_server(
415
416
  proxy_regions: list[str] = [],
416
417
  startup_timeout: int = 30,
417
418
  exit_grace_period: typing.Optional[int] = None,
419
+ h2_enabled: bool = False,
418
420
  ):
419
421
  """Decorator for Flash-enabled HTTP servers on Modal classes.
420
422
 
modal/functions.pyi CHANGED
@@ -409,7 +409,7 @@ class Function(
409
409
 
410
410
  _call_generator: ___call_generator_spec[typing_extensions.Self]
411
411
 
412
- class __remote_spec(typing_extensions.Protocol[P_INNER, ReturnType_INNER, SUPERSELF]):
412
+ class __remote_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER, SUPERSELF]):
413
413
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> ReturnType_INNER:
414
414
  """Calls the function remotely, executing it with the given arguments and returning the execution's result."""
415
415
  ...
@@ -418,7 +418,7 @@ class Function(
418
418
  """Calls the function remotely, executing it with the given arguments and returning the execution's result."""
419
419
  ...
420
420
 
421
- remote: __remote_spec[modal._functions.P, modal._functions.ReturnType, typing_extensions.Self]
421
+ remote: __remote_spec[modal._functions.ReturnType, modal._functions.P, typing_extensions.Self]
422
422
 
423
423
  class __remote_gen_spec(typing_extensions.Protocol[SUPERSELF]):
424
424
  def __call__(self, /, *args, **kwargs) -> typing.Generator[typing.Any, None, None]:
@@ -445,7 +445,7 @@ class Function(
445
445
  """
446
446
  ...
447
447
 
448
- class ___experimental_spawn_spec(typing_extensions.Protocol[P_INNER, ReturnType_INNER, SUPERSELF]):
448
+ class ___experimental_spawn_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER, SUPERSELF]):
449
449
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> FunctionCall[ReturnType_INNER]:
450
450
  """[Experimental] Calls the function with the given arguments, without waiting for the results.
451
451
 
@@ -469,7 +469,7 @@ class Function(
469
469
  ...
470
470
 
471
471
  _experimental_spawn: ___experimental_spawn_spec[
472
- modal._functions.P, modal._functions.ReturnType, typing_extensions.Self
472
+ modal._functions.ReturnType, modal._functions.P, typing_extensions.Self
473
473
  ]
474
474
 
475
475
  class ___spawn_map_inner_spec(typing_extensions.Protocol[P_INNER, SUPERSELF]):
@@ -478,7 +478,7 @@ class Function(
478
478
 
479
479
  _spawn_map_inner: ___spawn_map_inner_spec[modal._functions.P, typing_extensions.Self]
480
480
 
481
- class __spawn_spec(typing_extensions.Protocol[P_INNER, ReturnType_INNER, SUPERSELF]):
481
+ class __spawn_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER, SUPERSELF]):
482
482
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> FunctionCall[ReturnType_INNER]:
483
483
  """Calls the function with the given arguments, without waiting for the results.
484
484
 
@@ -499,7 +499,7 @@ class Function(
499
499
  """
500
500
  ...
501
501
 
502
- spawn: __spawn_spec[modal._functions.P, modal._functions.ReturnType, typing_extensions.Self]
502
+ spawn: __spawn_spec[modal._functions.ReturnType, modal._functions.P, typing_extensions.Self]
503
503
 
504
504
  def get_raw_f(self) -> collections.abc.Callable[..., typing.Any]:
505
505
  """Return the inner Python object wrapped by this Modal Function."""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.2.5.dev21
3
+ Version: 1.2.5.dev23
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License: Apache-2.0
@@ -26,7 +26,7 @@ modal/app.pyi,sha256=nI_Tibj-rI5I7dJFJnczbHvcmVzCvvCih0tMzoQlr_Y,50835
26
26
  modal/billing.py,sha256=zmQ3bcCJlwa4KD1IA_QgdWpm1pn13c-7qfy79iEauYI,195
27
27
  modal/call_graph.py,sha256=1g2DGcMIJvRy-xKicuf63IVE98gJSnQsr8R_NVMptNc,2581
28
28
  modal/client.py,sha256=k1CqQ_0t4-vHylkqYZgYCnClg-FT0QrTPAKivL01A_k,14354
29
- modal/client.pyi,sha256=JUCoVrWUcZSiXHiGnRrCsPcWwVueMmw4HUmD1NhMnak,13148
29
+ modal/client.pyi,sha256=boqYZMkgEW2dRAQGijBMuxfbaz84AQOxMdpDu4ilfis,13148
30
30
  modal/cloud_bucket_mount.py,sha256=cvVj5Rt4nDHoQbTneoJPTaAcnl_Ab_mrsjnnzd0v9OI,6013
31
31
  modal/cloud_bucket_mount.pyi,sha256=vXusGMOUk9HjCs4lhxteuCK4xLQclPfugGWKo7LECEA,7539
32
32
  modal/cls.py,sha256=4T__mtYlQUnkatif1Wnr8Ld9DN_ySydHj2UwhRg89ok,41984
@@ -43,7 +43,7 @@ modal/file_io.py,sha256=Whs3QSl3pQbSoLzSRIIWfK4XyP-kwgyZmWgx3bhJ9u0,20933
43
43
  modal/file_io.pyi,sha256=xtO6Glf_BFwDE7QiQQo24QqcMf_Vv-iz7WojcGVlLBU,15932
44
44
  modal/file_pattern_matcher.py,sha256=A_Kdkej6q7YQyhM_2-BvpFmPqJ0oHb54B6yf9VqvPVE,8116
45
45
  modal/functions.py,sha256=kcNHvqeGBxPI7Cgd57NIBBghkfbeFJzXO44WW0jSmao,325
46
- modal/functions.pyi,sha256=iaFyXiAZEdzd2e7vwB5sLzoLB1kSWCQrIiqmTaczFgQ,38111
46
+ modal/functions.pyi,sha256=Gyb8fhedU4BlEXIlgSBdDpQKNL-QIYvRxuf50WrN04k,38111
47
47
  modal/gpu.py,sha256=Fe5ORvVPDIstSq1xjmM6OoNgLYFWvogP9r5BgmD3hYg,6769
48
48
  modal/image.py,sha256=Pi1tpi41rklU-7PvXyJxPBYKdG3FcW-H_2pWjjeLYzs,108165
49
49
  modal/image.pyi,sha256=grkqK9BfyKDXmJYNme-lGa0O3u7pOU5GifyLOAhG3sc,78202
@@ -157,10 +157,10 @@ modal/cli/programs/run_jupyter.py,sha256=IJw8nds8Cjl9j4dxBqMGxhz-bIyVX0kle7jbt8H
157
157
  modal/cli/programs/run_marimo.py,sha256=QlCGPkwQ0XLajt2LtujR_BGsRV1AZ3OCUgZxkkM1lug,2893
158
158
  modal/cli/programs/vscode.py,sha256=E1aJPU7b8RWWj-JX71DifsCoLYsCAnre7lATiBJjUms,3386
159
159
  modal/experimental/__init__.py,sha256=ls4ScjJOdCXW0HagDOrNTTnkP4_N7y93HUl10jNDrD8,14554
160
- modal/experimental/flash.py,sha256=ue2lL7W7QNTFOTL7hAPkMe5uy4GD2N2Ae6xTt0oXjPM,31104
161
- modal/experimental/flash.pyi,sha256=i03XOnaqrBK6zcvLdJW1KFbv2H9Pv6DxKZOw5kMzaCw,16905
160
+ modal/experimental/flash.py,sha256=GJZwSr-4OHlP6gCIZdcbsSb8D8WX9xJwMphjwcfsRoU,31262
161
+ modal/experimental/flash.pyi,sha256=q4a3mdgL0jzATPL2tS7LpuyulYzF1vUSE453S9xc8n8,16965
162
162
  modal/experimental/ipython.py,sha256=TrCfmol9LGsRZMeDoeMPx3Hv3BFqQhYnmD_iH0pqdhk,2904
163
- modal-1.2.5.dev21.dist-info/licenses/LICENSE,sha256=psuoW8kuDP96RQsdhzwOqi6fyWv0ct8CR6Jr7He_P_k,10173
163
+ modal-1.2.5.dev23.dist-info/licenses/LICENSE,sha256=psuoW8kuDP96RQsdhzwOqi6fyWv0ct8CR6Jr7He_P_k,10173
164
164
  modal_docs/__init__.py,sha256=svYKtV8HDwDCN86zbdWqyq5T8sMdGDj0PVlzc2tIxDM,28
165
165
  modal_docs/gen_cli_docs.py,sha256=c1yfBS_x--gL5bs0N4ihMwqwX8l3IBWSkBAKNNIi6bQ,3801
166
166
  modal_docs/gen_reference_docs.py,sha256=d_CQUGQ0rfw28u75I2mov9AlS773z9rG40-yq5o7g2U,6359
@@ -168,10 +168,10 @@ modal_docs/mdmd/__init__.py,sha256=svYKtV8HDwDCN86zbdWqyq5T8sMdGDj0PVlzc2tIxDM,2
168
168
  modal_docs/mdmd/mdmd.py,sha256=tUTImNd4UMFk1opkaw8J672gX8AkBO5gbY2S_NMxsxs,7140
169
169
  modal_docs/mdmd/signatures.py,sha256=XJaZrK7Mdepk5fdX51A8uENiLFNil85Ud0d4MH8H5f0,3218
170
170
  modal_proto/__init__.py,sha256=MIEP8jhXUeGq_eCjYFcqN5b1bxBM4fdk0VESpjWR0fc,28
171
- modal_proto/api.proto,sha256=YrfsP7ayizl9MlvhtC-bBGJMXzXi9IylItDMGYzyv4I,110858
171
+ modal_proto/api.proto,sha256=uifRIgOdyqVSgNrfhjtaP6slO7pz25sqeHNnL-1rpPY,110881
172
172
  modal_proto/api_grpc.py,sha256=-8SHvPtalTAjQtRv7zzU7Z1VoDupoJs2ifG4gl_mF0s,134442
173
- modal_proto/api_pb2.py,sha256=EV5-rwuIePv9iJcxiWSKD7_MgqVBsYe5u1P9Y58xrgs,384451
174
- modal_proto/api_pb2.pyi,sha256=g4IqLzWuo_yYqzbdI3P92KxhHqoY3Ttq7I4o3wAGKso,542346
173
+ modal_proto/api_pb2.py,sha256=Ct-kyJ6clznmAC2IzyZzxxnJc2pYeRjazlpOfSzs8Bk,384491
174
+ modal_proto/api_pb2.pyi,sha256=4m3krGtBOGioOViGUtQJnMw3eCxe-j3VdWr2AWHhx6M,542488
175
175
  modal_proto/api_pb2_grpc.py,sha256=Hqw9jcbhpr-W6jsfog_tGU55ouZjITxGvA-DGNBqOLA,289714
176
176
  modal_proto/api_pb2_grpc.pyi,sha256=QLJ58ANCx147HeGJva58h0MTCLIDs9JmVjrx8bDdwlg,67776
177
177
  modal_proto/modal_api_grpc.py,sha256=MqaBZB2ZqYj6XTIgI_p5dOPjt9gKT4pAJNd_WXR3W84,21295
@@ -188,10 +188,10 @@ modal_proto/task_command_router_pb2.py,sha256=_pD2ZpU0bNzhwBdzmLoLyLtAtftI_Agxwn
188
188
  modal_proto/task_command_router_pb2.pyi,sha256=EyDgXPLr7alqjXYERV8w_MPuO404x0uCppmSkrfE9IE,14589
189
189
  modal_proto/task_command_router_pb2_grpc.py,sha256=uEQ0HdrCp8v-9bB5yIic9muA8spCShLHY6Bz9cCgOUE,10114
190
190
  modal_proto/task_command_router_pb2_grpc.pyi,sha256=s3Yxsrawdj4nr8vqQqsAxyX6ilWaGbdECy425KKbLIA,3301
191
- modal_version/__init__.py,sha256=j-CqczqASMfEzbvKSDq5OdQZ5XQTNqr738PQA2zMonY,121
191
+ modal_version/__init__.py,sha256=Uc2aHaJlC3K6QqjeCl8yYjdOC1k6Pxh6UbSMl9y_MOU,121
192
192
  modal_version/__main__.py,sha256=2FO0yYQQwDTh6udt1h-cBnGd1c4ZyHnHSI4BksxzVac,105
193
- modal-1.2.5.dev21.dist-info/METADATA,sha256=TzhzEShtFf3vPTnZSfI6Y2RsiIZOzbp4e_hVPkkZ5-k,2490
194
- modal-1.2.5.dev21.dist-info/WHEEL,sha256=1tXe9gY0PYatrMPMDd6jXqjfpz_B-Wqm32CPfRC58XU,91
195
- modal-1.2.5.dev21.dist-info/entry_points.txt,sha256=An-wYgeEUnm6xzrAP9_NTSTSciYvvEWsMZILtYrvpAI,46
196
- modal-1.2.5.dev21.dist-info/top_level.txt,sha256=4BWzoKYREKUZ5iyPzZpjqx4G8uB5TWxXPDwibLcVa7k,43
197
- modal-1.2.5.dev21.dist-info/RECORD,,
193
+ modal-1.2.5.dev23.dist-info/METADATA,sha256=PBuN9rBMy-rnUly1xYGJAMepVDEfMaQo5AhgKn5e0Ck,2490
194
+ modal-1.2.5.dev23.dist-info/WHEEL,sha256=1tXe9gY0PYatrMPMDd6jXqjfpz_B-Wqm32CPfRC58XU,91
195
+ modal-1.2.5.dev23.dist-info/entry_points.txt,sha256=An-wYgeEUnm6xzrAP9_NTSTSciYvvEWsMZILtYrvpAI,46
196
+ modal-1.2.5.dev23.dist-info/top_level.txt,sha256=4BWzoKYREKUZ5iyPzZpjqx4G8uB5TWxXPDwibLcVa7k,43
197
+ modal-1.2.5.dev23.dist-info/RECORD,,
modal_proto/api.proto CHANGED
@@ -2104,6 +2104,7 @@ message HTTPConfig {
2104
2104
  repeated string proxy_regions = 2;
2105
2105
  uint32 startup_timeout = 3;
2106
2106
  uint32 exit_grace_period = 4;
2107
+ bool h2_enabled = 5;
2107
2108
  }
2108
2109
 
2109
2110
  message Image {