modal 1.1.3.dev7__tar.gz → 1.1.4.dev1__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.
Files changed (190) hide show
  1. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/PKG-INFO +1 -1
  2. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/client.pyi +2 -2
  3. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/functions.pyi +6 -6
  4. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/parallel_map.py +11 -2
  5. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal.egg-info/PKG-INFO +1 -1
  6. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/api.proto +1 -0
  7. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/api_pb2.py +166 -166
  8. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/api_pb2.pyi +4 -1
  9. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_version/__init__.py +1 -1
  10. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/LICENSE +0 -0
  11. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/README.md +0 -0
  12. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/__init__.py +0 -0
  13. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/__main__.py +0 -0
  14. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_clustered_functions.py +0 -0
  15. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_clustered_functions.pyi +0 -0
  16. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_container_entrypoint.py +0 -0
  17. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_functions.py +0 -0
  18. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_ipython.py +0 -0
  19. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_location.py +0 -0
  20. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_object.py +0 -0
  21. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_output.py +0 -0
  22. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_partial_function.py +0 -0
  23. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_pty.py +0 -0
  24. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_resolver.py +0 -0
  25. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_resources.py +0 -0
  26. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_runtime/__init__.py +0 -0
  27. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_runtime/asgi.py +0 -0
  28. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_runtime/container_io_manager.py +0 -0
  29. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_runtime/container_io_manager.pyi +0 -0
  30. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_runtime/execution_context.py +0 -0
  31. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_runtime/execution_context.pyi +0 -0
  32. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_runtime/gpu_memory_snapshot.py +0 -0
  33. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_runtime/telemetry.py +0 -0
  34. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_runtime/user_code_imports.py +0 -0
  35. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_serialization.py +0 -0
  36. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_traceback.py +0 -0
  37. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_tunnel.py +0 -0
  38. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_tunnel.pyi +0 -0
  39. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_type_manager.py +0 -0
  40. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/__init__.py +0 -0
  41. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/app_utils.py +0 -0
  42. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/async_utils.py +0 -0
  43. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/auth_token_manager.py +0 -0
  44. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/blob_utils.py +0 -0
  45. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/bytes_io_segment_payload.py +0 -0
  46. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/deprecation.py +0 -0
  47. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/docker_utils.py +0 -0
  48. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/function_utils.py +0 -0
  49. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/git_utils.py +0 -0
  50. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/grpc_testing.py +0 -0
  51. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/grpc_utils.py +0 -0
  52. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/hash_utils.py +0 -0
  53. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/http_utils.py +0 -0
  54. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/jwt_utils.py +0 -0
  55. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/logger.py +0 -0
  56. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/mount_utils.py +0 -0
  57. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/name_utils.py +0 -0
  58. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/package_utils.py +0 -0
  59. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/pattern_utils.py +0 -0
  60. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/rand_pb_testing.py +0 -0
  61. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/shell_utils.py +0 -0
  62. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_utils/time_utils.py +0 -0
  63. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_vendor/__init__.py +0 -0
  64. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_vendor/a2wsgi_wsgi.py +0 -0
  65. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_vendor/cloudpickle.py +0 -0
  66. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_vendor/tblib.py +0 -0
  67. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/_watcher.py +0 -0
  68. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/app.py +0 -0
  69. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/app.pyi +0 -0
  70. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/builder/2023.12.312.txt +0 -0
  71. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/builder/2023.12.txt +0 -0
  72. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/builder/2024.04.txt +0 -0
  73. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/builder/2024.10.txt +0 -0
  74. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/builder/2025.06.txt +0 -0
  75. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/builder/PREVIEW.txt +0 -0
  76. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/builder/README.md +0 -0
  77. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/builder/base-images.json +0 -0
  78. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/call_graph.py +0 -0
  79. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/__init__.py +0 -0
  80. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/_download.py +0 -0
  81. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/_traceback.py +0 -0
  82. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/app.py +0 -0
  83. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/cluster.py +0 -0
  84. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/config.py +0 -0
  85. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/container.py +0 -0
  86. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/dict.py +0 -0
  87. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/entry_point.py +0 -0
  88. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/environment.py +0 -0
  89. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/import_refs.py +0 -0
  90. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/launch.py +0 -0
  91. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/network_file_system.py +0 -0
  92. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/profile.py +0 -0
  93. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/programs/__init__.py +0 -0
  94. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/programs/launch_instance_ssh.py +0 -0
  95. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/programs/run_jupyter.py +0 -0
  96. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/programs/run_marimo.py +0 -0
  97. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/programs/vscode.py +0 -0
  98. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/queues.py +0 -0
  99. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/run.py +0 -0
  100. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/secret.py +0 -0
  101. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/token.py +0 -0
  102. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/utils.py +0 -0
  103. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cli/volume.py +0 -0
  104. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/client.py +0 -0
  105. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cloud_bucket_mount.py +0 -0
  106. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cloud_bucket_mount.pyi +0 -0
  107. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cls.py +0 -0
  108. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/cls.pyi +0 -0
  109. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/config.py +0 -0
  110. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/container_process.py +0 -0
  111. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/container_process.pyi +0 -0
  112. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/dict.py +0 -0
  113. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/dict.pyi +0 -0
  114. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/environments.py +0 -0
  115. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/environments.pyi +0 -0
  116. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/exception.py +0 -0
  117. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/experimental/__init__.py +0 -0
  118. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/experimental/flash.py +0 -0
  119. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/experimental/flash.pyi +0 -0
  120. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/experimental/ipython.py +0 -0
  121. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/file_io.py +0 -0
  122. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/file_io.pyi +0 -0
  123. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/file_pattern_matcher.py +0 -0
  124. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/functions.py +0 -0
  125. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/gpu.py +0 -0
  126. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/image.py +0 -0
  127. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/image.pyi +0 -0
  128. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/io_streams.py +0 -0
  129. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/io_streams.pyi +0 -0
  130. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/mount.py +0 -0
  131. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/mount.pyi +0 -0
  132. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/network_file_system.py +0 -0
  133. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/network_file_system.pyi +0 -0
  134. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/object.py +0 -0
  135. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/object.pyi +0 -0
  136. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/output.py +0 -0
  137. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/parallel_map.pyi +0 -0
  138. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/partial_function.py +0 -0
  139. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/partial_function.pyi +0 -0
  140. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/proxy.py +0 -0
  141. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/proxy.pyi +0 -0
  142. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/py.typed +0 -0
  143. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/queue.py +0 -0
  144. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/queue.pyi +0 -0
  145. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/retries.py +0 -0
  146. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/runner.py +0 -0
  147. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/runner.pyi +0 -0
  148. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/running_app.py +0 -0
  149. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/sandbox.py +0 -0
  150. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/sandbox.pyi +0 -0
  151. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/schedule.py +0 -0
  152. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/scheduler_placement.py +0 -0
  153. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/secret.py +0 -0
  154. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/secret.pyi +0 -0
  155. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/serving.py +0 -0
  156. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/serving.pyi +0 -0
  157. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/snapshot.py +0 -0
  158. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/snapshot.pyi +0 -0
  159. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/stream_type.py +0 -0
  160. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/token_flow.py +0 -0
  161. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/token_flow.pyi +0 -0
  162. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/volume.py +0 -0
  163. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal/volume.pyi +0 -0
  164. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal.egg-info/SOURCES.txt +0 -0
  165. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal.egg-info/dependency_links.txt +0 -0
  166. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal.egg-info/entry_points.txt +0 -0
  167. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal.egg-info/requires.txt +0 -0
  168. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal.egg-info/top_level.txt +0 -0
  169. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_docs/__init__.py +0 -0
  170. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_docs/gen_cli_docs.py +0 -0
  171. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_docs/gen_reference_docs.py +0 -0
  172. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_docs/mdmd/__init__.py +0 -0
  173. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_docs/mdmd/mdmd.py +0 -0
  174. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_docs/mdmd/signatures.py +0 -0
  175. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/__init__.py +0 -0
  176. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/api_grpc.py +0 -0
  177. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/api_pb2_grpc.py +0 -0
  178. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/api_pb2_grpc.pyi +0 -0
  179. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/modal_api_grpc.py +0 -0
  180. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/modal_options_grpc.py +0 -0
  181. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/options.proto +0 -0
  182. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/options_grpc.py +0 -0
  183. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/options_pb2.py +0 -0
  184. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/options_pb2.pyi +0 -0
  185. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/options_pb2_grpc.py +0 -0
  186. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/options_pb2_grpc.pyi +0 -0
  187. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_proto/py.typed +0 -0
  188. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/modal_version/__main__.py +0 -0
  189. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/pyproject.toml +0 -0
  190. {modal-1.1.3.dev7 → modal-1.1.4.dev1}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.1.3.dev7
3
+ Version: 1.1.4.dev1
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License: Apache-2.0
@@ -33,7 +33,7 @@ class _Client:
33
33
  server_url: str,
34
34
  client_type: int,
35
35
  credentials: typing.Optional[tuple[str, str]],
36
- version: str = "1.1.3.dev7",
36
+ version: str = "1.1.4.dev1",
37
37
  ):
38
38
  """mdmd:hidden
39
39
  The Modal client object is not intended to be instantiated directly by users.
@@ -164,7 +164,7 @@ class Client:
164
164
  server_url: str,
165
165
  client_type: int,
166
166
  credentials: typing.Optional[tuple[str, str]],
167
- version: str = "1.1.3.dev7",
167
+ version: str = "1.1.4.dev1",
168
168
  ):
169
169
  """mdmd:hidden
170
170
  The Modal client object is not intended to be instantiated directly by users.
@@ -433,7 +433,7 @@ class Function(
433
433
 
434
434
  _call_generator: ___call_generator_spec[typing_extensions.Self]
435
435
 
436
- class __remote_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER, SUPERSELF]):
436
+ class __remote_spec(typing_extensions.Protocol[P_INNER, ReturnType_INNER, SUPERSELF]):
437
437
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> ReturnType_INNER:
438
438
  """Calls the function remotely, executing it with the given arguments and returning the execution's result."""
439
439
  ...
@@ -442,7 +442,7 @@ class Function(
442
442
  """Calls the function remotely, executing it with the given arguments and returning the execution's result."""
443
443
  ...
444
444
 
445
- remote: __remote_spec[modal._functions.ReturnType, modal._functions.P, typing_extensions.Self]
445
+ remote: __remote_spec[modal._functions.P, modal._functions.ReturnType, typing_extensions.Self]
446
446
 
447
447
  class __remote_gen_spec(typing_extensions.Protocol[SUPERSELF]):
448
448
  def __call__(self, /, *args, **kwargs) -> typing.Generator[typing.Any, None, None]:
@@ -469,7 +469,7 @@ class Function(
469
469
  """
470
470
  ...
471
471
 
472
- class ___experimental_spawn_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER, SUPERSELF]):
472
+ class ___experimental_spawn_spec(typing_extensions.Protocol[P_INNER, ReturnType_INNER, SUPERSELF]):
473
473
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> FunctionCall[ReturnType_INNER]:
474
474
  """[Experimental] Calls the function with the given arguments, without waiting for the results.
475
475
 
@@ -493,7 +493,7 @@ class Function(
493
493
  ...
494
494
 
495
495
  _experimental_spawn: ___experimental_spawn_spec[
496
- modal._functions.ReturnType, modal._functions.P, typing_extensions.Self
496
+ modal._functions.P, modal._functions.ReturnType, typing_extensions.Self
497
497
  ]
498
498
 
499
499
  class ___spawn_map_inner_spec(typing_extensions.Protocol[P_INNER, SUPERSELF]):
@@ -502,7 +502,7 @@ class Function(
502
502
 
503
503
  _spawn_map_inner: ___spawn_map_inner_spec[modal._functions.P, typing_extensions.Self]
504
504
 
505
- class __spawn_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER, SUPERSELF]):
505
+ class __spawn_spec(typing_extensions.Protocol[P_INNER, ReturnType_INNER, SUPERSELF]):
506
506
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> FunctionCall[ReturnType_INNER]:
507
507
  """Calls the function with the given arguments, without waiting for the results.
508
508
 
@@ -523,7 +523,7 @@ class Function(
523
523
  """
524
524
  ...
525
525
 
526
- spawn: __spawn_spec[modal._functions.ReturnType, modal._functions.P, typing_extensions.Self]
526
+ spawn: __spawn_spec[modal._functions.P, modal._functions.ReturnType, typing_extensions.Self]
527
527
 
528
528
  def get_raw_f(self) -> collections.abc.Callable[..., typing.Any]:
529
529
  """Return the inner Python object wrapped by this Modal Function."""
@@ -762,7 +762,12 @@ async def _map_invocation_inputplane(
762
762
  metadata = await client.get_input_plane_metadata(function._input_plane_region)
763
763
 
764
764
  response: api_pb2.MapStartOrContinueResponse = await retry_transient_errors(
765
- input_plane_stub.MapStartOrContinue, request, metadata=metadata
765
+ input_plane_stub.MapStartOrContinue,
766
+ request,
767
+ metadata=metadata,
768
+ additional_status_codes=[Status.RESOURCE_EXHAUSTED],
769
+ max_delay=PUMP_INPUTS_MAX_RETRY_DELAY,
770
+ max_retries=None,
766
771
  )
767
772
 
768
773
  # match response items to the corresponding request item index
@@ -794,7 +799,11 @@ async def _map_invocation_inputplane(
794
799
  await function_call_id_received.wait()
795
800
  continue
796
801
 
797
- await asyncio.sleep(1)
802
+ sleep_task = asyncio.create_task(asyncio.sleep(1))
803
+ map_done_task = asyncio.create_task(map_done_event.wait())
804
+ done, _ = await asyncio.wait([sleep_task, map_done_task], return_when=FIRST_COMPLETED)
805
+ if map_done_task in done:
806
+ break
798
807
 
799
808
  # check_inputs = [(idx, attempt_token), ...]
800
809
  check_inputs = map_items_manager.get_input_idxs_waiting_for_output()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.1.3.dev7
3
+ Version: 1.1.4.dev1
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License: Apache-2.0
@@ -3072,6 +3072,7 @@ message TaskLogsBatch {
3072
3072
  bool eof = 14;
3073
3073
  string pty_exec_id = 15; // Used for interactive functions
3074
3074
  string root_function_id = 16;
3075
+ uint32 ttl_days = 17;
3075
3076
  }
3076
3077
 
3077
3078
  message TaskProgress {