modal 0.73.168__tar.gz → 0.73.169__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 (183) hide show
  1. {modal-0.73.168 → modal-0.73.169}/PKG-INFO +1 -1
  2. {modal-0.73.168 → modal-0.73.169}/modal/client.pyi +2 -2
  3. {modal-0.73.168 → modal-0.73.169}/modal/parallel_map.py +8 -5
  4. {modal-0.73.168 → modal-0.73.169}/modal.egg-info/PKG-INFO +1 -1
  5. {modal-0.73.168 → modal-0.73.169}/modal_version/_version_generated.py +1 -1
  6. {modal-0.73.168 → modal-0.73.169}/LICENSE +0 -0
  7. {modal-0.73.168 → modal-0.73.169}/README.md +0 -0
  8. {modal-0.73.168 → modal-0.73.169}/modal/__init__.py +0 -0
  9. {modal-0.73.168 → modal-0.73.169}/modal/__main__.py +0 -0
  10. {modal-0.73.168 → modal-0.73.169}/modal/_clustered_functions.py +0 -0
  11. {modal-0.73.168 → modal-0.73.169}/modal/_clustered_functions.pyi +0 -0
  12. {modal-0.73.168 → modal-0.73.169}/modal/_container_entrypoint.py +0 -0
  13. {modal-0.73.168 → modal-0.73.169}/modal/_functions.py +0 -0
  14. {modal-0.73.168 → modal-0.73.169}/modal/_ipython.py +0 -0
  15. {modal-0.73.168 → modal-0.73.169}/modal/_location.py +0 -0
  16. {modal-0.73.168 → modal-0.73.169}/modal/_object.py +0 -0
  17. {modal-0.73.168 → modal-0.73.169}/modal/_output.py +0 -0
  18. {modal-0.73.168 → modal-0.73.169}/modal/_partial_function.py +0 -0
  19. {modal-0.73.168 → modal-0.73.169}/modal/_pty.py +0 -0
  20. {modal-0.73.168 → modal-0.73.169}/modal/_resolver.py +0 -0
  21. {modal-0.73.168 → modal-0.73.169}/modal/_resources.py +0 -0
  22. {modal-0.73.168 → modal-0.73.169}/modal/_runtime/__init__.py +0 -0
  23. {modal-0.73.168 → modal-0.73.169}/modal/_runtime/asgi.py +0 -0
  24. {modal-0.73.168 → modal-0.73.169}/modal/_runtime/container_io_manager.py +0 -0
  25. {modal-0.73.168 → modal-0.73.169}/modal/_runtime/container_io_manager.pyi +0 -0
  26. {modal-0.73.168 → modal-0.73.169}/modal/_runtime/execution_context.py +0 -0
  27. {modal-0.73.168 → modal-0.73.169}/modal/_runtime/execution_context.pyi +0 -0
  28. {modal-0.73.168 → modal-0.73.169}/modal/_runtime/gpu_memory_snapshot.py +0 -0
  29. {modal-0.73.168 → modal-0.73.169}/modal/_runtime/telemetry.py +0 -0
  30. {modal-0.73.168 → modal-0.73.169}/modal/_runtime/user_code_imports.py +0 -0
  31. {modal-0.73.168 → modal-0.73.169}/modal/_serialization.py +0 -0
  32. {modal-0.73.168 → modal-0.73.169}/modal/_traceback.py +0 -0
  33. {modal-0.73.168 → modal-0.73.169}/modal/_tunnel.py +0 -0
  34. {modal-0.73.168 → modal-0.73.169}/modal/_tunnel.pyi +0 -0
  35. {modal-0.73.168 → modal-0.73.169}/modal/_type_manager.py +0 -0
  36. {modal-0.73.168 → modal-0.73.169}/modal/_utils/__init__.py +0 -0
  37. {modal-0.73.168 → modal-0.73.169}/modal/_utils/app_utils.py +0 -0
  38. {modal-0.73.168 → modal-0.73.169}/modal/_utils/async_utils.py +0 -0
  39. {modal-0.73.168 → modal-0.73.169}/modal/_utils/blob_utils.py +0 -0
  40. {modal-0.73.168 → modal-0.73.169}/modal/_utils/bytes_io_segment_payload.py +0 -0
  41. {modal-0.73.168 → modal-0.73.169}/modal/_utils/deprecation.py +0 -0
  42. {modal-0.73.168 → modal-0.73.169}/modal/_utils/docker_utils.py +0 -0
  43. {modal-0.73.168 → modal-0.73.169}/modal/_utils/function_utils.py +0 -0
  44. {modal-0.73.168 → modal-0.73.169}/modal/_utils/git_utils.py +0 -0
  45. {modal-0.73.168 → modal-0.73.169}/modal/_utils/grpc_testing.py +0 -0
  46. {modal-0.73.168 → modal-0.73.169}/modal/_utils/grpc_utils.py +0 -0
  47. {modal-0.73.168 → modal-0.73.169}/modal/_utils/hash_utils.py +0 -0
  48. {modal-0.73.168 → modal-0.73.169}/modal/_utils/http_utils.py +0 -0
  49. {modal-0.73.168 → modal-0.73.169}/modal/_utils/jwt_utils.py +0 -0
  50. {modal-0.73.168 → modal-0.73.169}/modal/_utils/logger.py +0 -0
  51. {modal-0.73.168 → modal-0.73.169}/modal/_utils/mount_utils.py +0 -0
  52. {modal-0.73.168 → modal-0.73.169}/modal/_utils/name_utils.py +0 -0
  53. {modal-0.73.168 → modal-0.73.169}/modal/_utils/package_utils.py +0 -0
  54. {modal-0.73.168 → modal-0.73.169}/modal/_utils/pattern_utils.py +0 -0
  55. {modal-0.73.168 → modal-0.73.169}/modal/_utils/rand_pb_testing.py +0 -0
  56. {modal-0.73.168 → modal-0.73.169}/modal/_utils/shell_utils.py +0 -0
  57. {modal-0.73.168 → modal-0.73.169}/modal/_vendor/__init__.py +0 -0
  58. {modal-0.73.168 → modal-0.73.169}/modal/_vendor/a2wsgi_wsgi.py +0 -0
  59. {modal-0.73.168 → modal-0.73.169}/modal/_vendor/cloudpickle.py +0 -0
  60. {modal-0.73.168 → modal-0.73.169}/modal/_vendor/tblib.py +0 -0
  61. {modal-0.73.168 → modal-0.73.169}/modal/_watcher.py +0 -0
  62. {modal-0.73.168 → modal-0.73.169}/modal/app.py +0 -0
  63. {modal-0.73.168 → modal-0.73.169}/modal/app.pyi +0 -0
  64. {modal-0.73.168 → modal-0.73.169}/modal/call_graph.py +0 -0
  65. {modal-0.73.168 → modal-0.73.169}/modal/cli/__init__.py +0 -0
  66. {modal-0.73.168 → modal-0.73.169}/modal/cli/_download.py +0 -0
  67. {modal-0.73.168 → modal-0.73.169}/modal/cli/_traceback.py +0 -0
  68. {modal-0.73.168 → modal-0.73.169}/modal/cli/app.py +0 -0
  69. {modal-0.73.168 → modal-0.73.169}/modal/cli/config.py +0 -0
  70. {modal-0.73.168 → modal-0.73.169}/modal/cli/container.py +0 -0
  71. {modal-0.73.168 → modal-0.73.169}/modal/cli/dict.py +0 -0
  72. {modal-0.73.168 → modal-0.73.169}/modal/cli/entry_point.py +0 -0
  73. {modal-0.73.168 → modal-0.73.169}/modal/cli/environment.py +0 -0
  74. {modal-0.73.168 → modal-0.73.169}/modal/cli/import_refs.py +0 -0
  75. {modal-0.73.168 → modal-0.73.169}/modal/cli/launch.py +0 -0
  76. {modal-0.73.168 → modal-0.73.169}/modal/cli/network_file_system.py +0 -0
  77. {modal-0.73.168 → modal-0.73.169}/modal/cli/profile.py +0 -0
  78. {modal-0.73.168 → modal-0.73.169}/modal/cli/programs/__init__.py +0 -0
  79. {modal-0.73.168 → modal-0.73.169}/modal/cli/programs/run_jupyter.py +0 -0
  80. {modal-0.73.168 → modal-0.73.169}/modal/cli/programs/vscode.py +0 -0
  81. {modal-0.73.168 → modal-0.73.169}/modal/cli/queues.py +0 -0
  82. {modal-0.73.168 → modal-0.73.169}/modal/cli/run.py +0 -0
  83. {modal-0.73.168 → modal-0.73.169}/modal/cli/secret.py +0 -0
  84. {modal-0.73.168 → modal-0.73.169}/modal/cli/token.py +0 -0
  85. {modal-0.73.168 → modal-0.73.169}/modal/cli/utils.py +0 -0
  86. {modal-0.73.168 → modal-0.73.169}/modal/cli/volume.py +0 -0
  87. {modal-0.73.168 → modal-0.73.169}/modal/client.py +0 -0
  88. {modal-0.73.168 → modal-0.73.169}/modal/cloud_bucket_mount.py +0 -0
  89. {modal-0.73.168 → modal-0.73.169}/modal/cloud_bucket_mount.pyi +0 -0
  90. {modal-0.73.168 → modal-0.73.169}/modal/cls.py +0 -0
  91. {modal-0.73.168 → modal-0.73.169}/modal/cls.pyi +0 -0
  92. {modal-0.73.168 → modal-0.73.169}/modal/config.py +0 -0
  93. {modal-0.73.168 → modal-0.73.169}/modal/container_process.py +0 -0
  94. {modal-0.73.168 → modal-0.73.169}/modal/container_process.pyi +0 -0
  95. {modal-0.73.168 → modal-0.73.169}/modal/dict.py +0 -0
  96. {modal-0.73.168 → modal-0.73.169}/modal/dict.pyi +0 -0
  97. {modal-0.73.168 → modal-0.73.169}/modal/environments.py +0 -0
  98. {modal-0.73.168 → modal-0.73.169}/modal/environments.pyi +0 -0
  99. {modal-0.73.168 → modal-0.73.169}/modal/exception.py +0 -0
  100. {modal-0.73.168 → modal-0.73.169}/modal/experimental/__init__.py +0 -0
  101. {modal-0.73.168 → modal-0.73.169}/modal/experimental/ipython.py +0 -0
  102. {modal-0.73.168 → modal-0.73.169}/modal/file_io.py +0 -0
  103. {modal-0.73.168 → modal-0.73.169}/modal/file_io.pyi +0 -0
  104. {modal-0.73.168 → modal-0.73.169}/modal/file_pattern_matcher.py +0 -0
  105. {modal-0.73.168 → modal-0.73.169}/modal/functions.py +0 -0
  106. {modal-0.73.168 → modal-0.73.169}/modal/functions.pyi +0 -0
  107. {modal-0.73.168 → modal-0.73.169}/modal/gpu.py +0 -0
  108. {modal-0.73.168 → modal-0.73.169}/modal/image.py +0 -0
  109. {modal-0.73.168 → modal-0.73.169}/modal/image.pyi +0 -0
  110. {modal-0.73.168 → modal-0.73.169}/modal/io_streams.py +0 -0
  111. {modal-0.73.168 → modal-0.73.169}/modal/io_streams.pyi +0 -0
  112. {modal-0.73.168 → modal-0.73.169}/modal/mount.py +0 -0
  113. {modal-0.73.168 → modal-0.73.169}/modal/mount.pyi +0 -0
  114. {modal-0.73.168 → modal-0.73.169}/modal/network_file_system.py +0 -0
  115. {modal-0.73.168 → modal-0.73.169}/modal/network_file_system.pyi +0 -0
  116. {modal-0.73.168 → modal-0.73.169}/modal/object.py +0 -0
  117. {modal-0.73.168 → modal-0.73.169}/modal/object.pyi +0 -0
  118. {modal-0.73.168 → modal-0.73.169}/modal/output.py +0 -0
  119. {modal-0.73.168 → modal-0.73.169}/modal/parallel_map.pyi +0 -0
  120. {modal-0.73.168 → modal-0.73.169}/modal/partial_function.py +0 -0
  121. {modal-0.73.168 → modal-0.73.169}/modal/partial_function.pyi +0 -0
  122. {modal-0.73.168 → modal-0.73.169}/modal/proxy.py +0 -0
  123. {modal-0.73.168 → modal-0.73.169}/modal/proxy.pyi +0 -0
  124. {modal-0.73.168 → modal-0.73.169}/modal/py.typed +0 -0
  125. {modal-0.73.168 → modal-0.73.169}/modal/queue.py +0 -0
  126. {modal-0.73.168 → modal-0.73.169}/modal/queue.pyi +0 -0
  127. {modal-0.73.168 → modal-0.73.169}/modal/requirements/2023.12.312.txt +0 -0
  128. {modal-0.73.168 → modal-0.73.169}/modal/requirements/2023.12.txt +0 -0
  129. {modal-0.73.168 → modal-0.73.169}/modal/requirements/2024.04.txt +0 -0
  130. {modal-0.73.168 → modal-0.73.169}/modal/requirements/2024.10.txt +0 -0
  131. {modal-0.73.168 → modal-0.73.169}/modal/requirements/PREVIEW.txt +0 -0
  132. {modal-0.73.168 → modal-0.73.169}/modal/requirements/README.md +0 -0
  133. {modal-0.73.168 → modal-0.73.169}/modal/requirements/base-images.json +0 -0
  134. {modal-0.73.168 → modal-0.73.169}/modal/retries.py +0 -0
  135. {modal-0.73.168 → modal-0.73.169}/modal/runner.py +0 -0
  136. {modal-0.73.168 → modal-0.73.169}/modal/runner.pyi +0 -0
  137. {modal-0.73.168 → modal-0.73.169}/modal/running_app.py +0 -0
  138. {modal-0.73.168 → modal-0.73.169}/modal/sandbox.py +0 -0
  139. {modal-0.73.168 → modal-0.73.169}/modal/sandbox.pyi +0 -0
  140. {modal-0.73.168 → modal-0.73.169}/modal/schedule.py +0 -0
  141. {modal-0.73.168 → modal-0.73.169}/modal/scheduler_placement.py +0 -0
  142. {modal-0.73.168 → modal-0.73.169}/modal/secret.py +0 -0
  143. {modal-0.73.168 → modal-0.73.169}/modal/secret.pyi +0 -0
  144. {modal-0.73.168 → modal-0.73.169}/modal/serving.py +0 -0
  145. {modal-0.73.168 → modal-0.73.169}/modal/serving.pyi +0 -0
  146. {modal-0.73.168 → modal-0.73.169}/modal/snapshot.py +0 -0
  147. {modal-0.73.168 → modal-0.73.169}/modal/snapshot.pyi +0 -0
  148. {modal-0.73.168 → modal-0.73.169}/modal/stream_type.py +0 -0
  149. {modal-0.73.168 → modal-0.73.169}/modal/token_flow.py +0 -0
  150. {modal-0.73.168 → modal-0.73.169}/modal/token_flow.pyi +0 -0
  151. {modal-0.73.168 → modal-0.73.169}/modal/volume.py +0 -0
  152. {modal-0.73.168 → modal-0.73.169}/modal/volume.pyi +0 -0
  153. {modal-0.73.168 → modal-0.73.169}/modal.egg-info/SOURCES.txt +0 -0
  154. {modal-0.73.168 → modal-0.73.169}/modal.egg-info/dependency_links.txt +0 -0
  155. {modal-0.73.168 → modal-0.73.169}/modal.egg-info/entry_points.txt +0 -0
  156. {modal-0.73.168 → modal-0.73.169}/modal.egg-info/requires.txt +0 -0
  157. {modal-0.73.168 → modal-0.73.169}/modal.egg-info/top_level.txt +0 -0
  158. {modal-0.73.168 → modal-0.73.169}/modal_docs/__init__.py +0 -0
  159. {modal-0.73.168 → modal-0.73.169}/modal_docs/gen_cli_docs.py +0 -0
  160. {modal-0.73.168 → modal-0.73.169}/modal_docs/gen_reference_docs.py +0 -0
  161. {modal-0.73.168 → modal-0.73.169}/modal_docs/mdmd/__init__.py +0 -0
  162. {modal-0.73.168 → modal-0.73.169}/modal_docs/mdmd/mdmd.py +0 -0
  163. {modal-0.73.168 → modal-0.73.169}/modal_docs/mdmd/signatures.py +0 -0
  164. {modal-0.73.168 → modal-0.73.169}/modal_proto/__init__.py +0 -0
  165. {modal-0.73.168 → modal-0.73.169}/modal_proto/api.proto +0 -0
  166. {modal-0.73.168 → modal-0.73.169}/modal_proto/api_grpc.py +0 -0
  167. {modal-0.73.168 → modal-0.73.169}/modal_proto/api_pb2.py +0 -0
  168. {modal-0.73.168 → modal-0.73.169}/modal_proto/api_pb2.pyi +0 -0
  169. {modal-0.73.168 → modal-0.73.169}/modal_proto/api_pb2_grpc.py +0 -0
  170. {modal-0.73.168 → modal-0.73.169}/modal_proto/api_pb2_grpc.pyi +0 -0
  171. {modal-0.73.168 → modal-0.73.169}/modal_proto/modal_api_grpc.py +0 -0
  172. {modal-0.73.168 → modal-0.73.169}/modal_proto/modal_options_grpc.py +0 -0
  173. {modal-0.73.168 → modal-0.73.169}/modal_proto/options.proto +0 -0
  174. {modal-0.73.168 → modal-0.73.169}/modal_proto/options_grpc.py +0 -0
  175. {modal-0.73.168 → modal-0.73.169}/modal_proto/options_pb2.py +0 -0
  176. {modal-0.73.168 → modal-0.73.169}/modal_proto/options_pb2.pyi +0 -0
  177. {modal-0.73.168 → modal-0.73.169}/modal_proto/options_pb2_grpc.py +0 -0
  178. {modal-0.73.168 → modal-0.73.169}/modal_proto/options_pb2_grpc.pyi +0 -0
  179. {modal-0.73.168 → modal-0.73.169}/modal_proto/py.typed +0 -0
  180. {modal-0.73.168 → modal-0.73.169}/modal_version/__init__.py +0 -0
  181. {modal-0.73.168 → modal-0.73.169}/modal_version/__main__.py +0 -0
  182. {modal-0.73.168 → modal-0.73.169}/pyproject.toml +0 -0
  183. {modal-0.73.168 → modal-0.73.169}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 0.73.168
3
+ Version: 0.73.169
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License: Apache-2.0
@@ -31,7 +31,7 @@ class _Client:
31
31
  server_url: str,
32
32
  client_type: int,
33
33
  credentials: typing.Optional[tuple[str, str]],
34
- version: str = "0.73.168",
34
+ version: str = "0.73.169",
35
35
  ): ...
36
36
  def is_closed(self) -> bool: ...
37
37
  @property
@@ -93,7 +93,7 @@ class Client:
93
93
  server_url: str,
94
94
  client_type: int,
95
95
  credentials: typing.Optional[tuple[str, str]],
96
- version: str = "0.73.168",
96
+ version: str = "0.73.169",
97
97
  ): ...
98
98
  def is_closed(self) -> bool: ...
99
99
  @property
@@ -41,7 +41,8 @@ if typing.TYPE_CHECKING:
41
41
  # pump_inputs should retry if it receives any of the standard retryable codes plus RESOURCE_EXHAUSTED.
42
42
  PUMP_INPUTS_RETRYABLE_GRPC_STATUS_CODES = RETRYABLE_GRPC_STATUS_CODES + [Status.RESOURCE_EXHAUSTED]
43
43
  PUMP_INPUTS_MAX_RETRIES = 8
44
- PUMP_INPUTS_MAX_RETRY_DELAY=15
44
+ PUMP_INPUTS_MAX_RETRY_DELAY = 15
45
+
45
46
 
46
47
  class _SynchronizedQueue:
47
48
  """mdmd:hidden"""
@@ -357,6 +358,7 @@ async def _map_invocation(
357
358
  f"retried_outputs={retried_outputs} input_queue_size={input_queue.qsize()} "
358
359
  f"retry_queue_size={retry_queue.qsize()} map_items_manager={len(map_items_manager)}"
359
360
  )
361
+
360
362
  while True:
361
363
  log_stats()
362
364
  try:
@@ -401,7 +403,7 @@ def _map_sync(
401
403
  assert list(my_func.map([1, 2, 3, 4])) == [1, 4, 9, 16]
402
404
  ```
403
405
 
404
- If applied to a `stub.function`, `map()` returns one result per input and the output order
406
+ If applied to a `app.function`, `map()` returns one result per input and the output order
405
407
  is guaranteed to be the same as the input order. Set `order_outputs=False` to return results
406
408
  in the order that they are completed instead.
407
409
 
@@ -570,6 +572,7 @@ class _MapItemState(enum.Enum):
570
572
  # The output has been received and was either successful, or failed with no more retries remaining.
571
573
  COMPLETE = 5
572
574
 
575
+
573
576
  class _OutputType(enum.Enum):
574
577
  SUCCESSFUL_COMPLETION = 1
575
578
  FAILED_COMPLETION = 2
@@ -578,11 +581,12 @@ class _OutputType(enum.Enum):
578
581
  STALE_RETRY_DUPLICATE = 5
579
582
  NO_CONTEXT_DUPLICATE = 6
580
583
 
584
+
581
585
  class _MapItemContext:
582
586
  state: _MapItemState
583
587
  input: api_pb2.FunctionInput
584
588
  retry_manager: RetryManager
585
- sync_client_retries_enabled:bool
589
+ sync_client_retries_enabled: bool
586
590
  # Both these futures are strings. Omitting generic type because
587
591
  # it causes an error when running `inv protoc type-stubs`.
588
592
  input_id: asyncio.Future
@@ -701,8 +705,7 @@ class _MapItemsManager:
701
705
  function_call_invocation_type: "api_pb2.FunctionCallInvocationType.ValueType",
702
706
  retry_queue: TimestampPriorityQueue,
703
707
  sync_client_retries_enabled: bool,
704
- max_inputs_outstanding: int
705
-
708
+ max_inputs_outstanding: int,
706
709
  ):
707
710
  self._retry_policy = retry_policy
708
711
  self.function_call_invocation_type = function_call_invocation_type
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 0.73.168
3
+ Version: 0.73.169
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License: Apache-2.0
@@ -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 = 168 # git: cafe25f
4
+ build_number = 169 # git: 4137d51
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes