modal 0.73.107__tar.gz → 0.73.108__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 (184) hide show
  1. {modal-0.73.107 → modal-0.73.108}/PKG-INFO +1 -1
  2. {modal-0.73.107 → modal-0.73.108}/modal/client.pyi +2 -2
  3. {modal-0.73.107 → modal-0.73.108}/modal/image.py +5 -1
  4. {modal-0.73.107 → modal-0.73.108}/modal.egg-info/PKG-INFO +1 -1
  5. {modal-0.73.107 → modal-0.73.108}/modal_version/_version_generated.py +1 -1
  6. {modal-0.73.107 → modal-0.73.108}/LICENSE +0 -0
  7. {modal-0.73.107 → modal-0.73.108}/README.md +0 -0
  8. {modal-0.73.107 → modal-0.73.108}/modal/__init__.py +0 -0
  9. {modal-0.73.107 → modal-0.73.108}/modal/__main__.py +0 -0
  10. {modal-0.73.107 → modal-0.73.108}/modal/_clustered_functions.py +0 -0
  11. {modal-0.73.107 → modal-0.73.108}/modal/_clustered_functions.pyi +0 -0
  12. {modal-0.73.107 → modal-0.73.108}/modal/_container_entrypoint.py +0 -0
  13. {modal-0.73.107 → modal-0.73.108}/modal/_functions.py +0 -0
  14. {modal-0.73.107 → modal-0.73.108}/modal/_ipython.py +0 -0
  15. {modal-0.73.107 → modal-0.73.108}/modal/_location.py +0 -0
  16. {modal-0.73.107 → modal-0.73.108}/modal/_object.py +0 -0
  17. {modal-0.73.107 → modal-0.73.108}/modal/_output.py +0 -0
  18. {modal-0.73.107 → modal-0.73.108}/modal/_partial_function.py +0 -0
  19. {modal-0.73.107 → modal-0.73.108}/modal/_proxy_tunnel.py +0 -0
  20. {modal-0.73.107 → modal-0.73.108}/modal/_pty.py +0 -0
  21. {modal-0.73.107 → modal-0.73.108}/modal/_resolver.py +0 -0
  22. {modal-0.73.107 → modal-0.73.108}/modal/_resources.py +0 -0
  23. {modal-0.73.107 → modal-0.73.108}/modal/_runtime/__init__.py +0 -0
  24. {modal-0.73.107 → modal-0.73.108}/modal/_runtime/asgi.py +0 -0
  25. {modal-0.73.107 → modal-0.73.108}/modal/_runtime/container_io_manager.py +0 -0
  26. {modal-0.73.107 → modal-0.73.108}/modal/_runtime/container_io_manager.pyi +0 -0
  27. {modal-0.73.107 → modal-0.73.108}/modal/_runtime/execution_context.py +0 -0
  28. {modal-0.73.107 → modal-0.73.108}/modal/_runtime/execution_context.pyi +0 -0
  29. {modal-0.73.107 → modal-0.73.108}/modal/_runtime/gpu_memory_snapshot.py +0 -0
  30. {modal-0.73.107 → modal-0.73.108}/modal/_runtime/telemetry.py +0 -0
  31. {modal-0.73.107 → modal-0.73.108}/modal/_runtime/user_code_imports.py +0 -0
  32. {modal-0.73.107 → modal-0.73.108}/modal/_serialization.py +0 -0
  33. {modal-0.73.107 → modal-0.73.108}/modal/_traceback.py +0 -0
  34. {modal-0.73.107 → modal-0.73.108}/modal/_tunnel.py +0 -0
  35. {modal-0.73.107 → modal-0.73.108}/modal/_tunnel.pyi +0 -0
  36. {modal-0.73.107 → modal-0.73.108}/modal/_utils/__init__.py +0 -0
  37. {modal-0.73.107 → modal-0.73.108}/modal/_utils/app_utils.py +0 -0
  38. {modal-0.73.107 → modal-0.73.108}/modal/_utils/async_utils.py +0 -0
  39. {modal-0.73.107 → modal-0.73.108}/modal/_utils/blob_utils.py +0 -0
  40. {modal-0.73.107 → modal-0.73.108}/modal/_utils/bytes_io_segment_payload.py +0 -0
  41. {modal-0.73.107 → modal-0.73.108}/modal/_utils/deprecation.py +0 -0
  42. {modal-0.73.107 → modal-0.73.108}/modal/_utils/docker_utils.py +0 -0
  43. {modal-0.73.107 → modal-0.73.108}/modal/_utils/function_utils.py +0 -0
  44. {modal-0.73.107 → modal-0.73.108}/modal/_utils/git_utils.py +0 -0
  45. {modal-0.73.107 → modal-0.73.108}/modal/_utils/grpc_testing.py +0 -0
  46. {modal-0.73.107 → modal-0.73.108}/modal/_utils/grpc_utils.py +0 -0
  47. {modal-0.73.107 → modal-0.73.108}/modal/_utils/hash_utils.py +0 -0
  48. {modal-0.73.107 → modal-0.73.108}/modal/_utils/http_utils.py +0 -0
  49. {modal-0.73.107 → modal-0.73.108}/modal/_utils/logger.py +0 -0
  50. {modal-0.73.107 → modal-0.73.108}/modal/_utils/mount_utils.py +0 -0
  51. {modal-0.73.107 → modal-0.73.108}/modal/_utils/name_utils.py +0 -0
  52. {modal-0.73.107 → modal-0.73.108}/modal/_utils/package_utils.py +0 -0
  53. {modal-0.73.107 → modal-0.73.108}/modal/_utils/pattern_utils.py +0 -0
  54. {modal-0.73.107 → modal-0.73.108}/modal/_utils/rand_pb_testing.py +0 -0
  55. {modal-0.73.107 → modal-0.73.108}/modal/_utils/shell_utils.py +0 -0
  56. {modal-0.73.107 → modal-0.73.108}/modal/_vendor/__init__.py +0 -0
  57. {modal-0.73.107 → modal-0.73.108}/modal/_vendor/a2wsgi_wsgi.py +0 -0
  58. {modal-0.73.107 → modal-0.73.108}/modal/_vendor/cloudpickle.py +0 -0
  59. {modal-0.73.107 → modal-0.73.108}/modal/_vendor/tblib.py +0 -0
  60. {modal-0.73.107 → modal-0.73.108}/modal/_watcher.py +0 -0
  61. {modal-0.73.107 → modal-0.73.108}/modal/app.py +0 -0
  62. {modal-0.73.107 → modal-0.73.108}/modal/app.pyi +0 -0
  63. {modal-0.73.107 → modal-0.73.108}/modal/call_graph.py +0 -0
  64. {modal-0.73.107 → modal-0.73.108}/modal/cli/__init__.py +0 -0
  65. {modal-0.73.107 → modal-0.73.108}/modal/cli/_download.py +0 -0
  66. {modal-0.73.107 → modal-0.73.108}/modal/cli/_traceback.py +0 -0
  67. {modal-0.73.107 → modal-0.73.108}/modal/cli/app.py +0 -0
  68. {modal-0.73.107 → modal-0.73.108}/modal/cli/config.py +0 -0
  69. {modal-0.73.107 → modal-0.73.108}/modal/cli/container.py +0 -0
  70. {modal-0.73.107 → modal-0.73.108}/modal/cli/dict.py +0 -0
  71. {modal-0.73.107 → modal-0.73.108}/modal/cli/entry_point.py +0 -0
  72. {modal-0.73.107 → modal-0.73.108}/modal/cli/environment.py +0 -0
  73. {modal-0.73.107 → modal-0.73.108}/modal/cli/import_refs.py +0 -0
  74. {modal-0.73.107 → modal-0.73.108}/modal/cli/launch.py +0 -0
  75. {modal-0.73.107 → modal-0.73.108}/modal/cli/network_file_system.py +0 -0
  76. {modal-0.73.107 → modal-0.73.108}/modal/cli/profile.py +0 -0
  77. {modal-0.73.107 → modal-0.73.108}/modal/cli/programs/__init__.py +0 -0
  78. {modal-0.73.107 → modal-0.73.108}/modal/cli/programs/run_jupyter.py +0 -0
  79. {modal-0.73.107 → modal-0.73.108}/modal/cli/programs/vscode.py +0 -0
  80. {modal-0.73.107 → modal-0.73.108}/modal/cli/queues.py +0 -0
  81. {modal-0.73.107 → modal-0.73.108}/modal/cli/run.py +0 -0
  82. {modal-0.73.107 → modal-0.73.108}/modal/cli/secret.py +0 -0
  83. {modal-0.73.107 → modal-0.73.108}/modal/cli/token.py +0 -0
  84. {modal-0.73.107 → modal-0.73.108}/modal/cli/utils.py +0 -0
  85. {modal-0.73.107 → modal-0.73.108}/modal/cli/volume.py +0 -0
  86. {modal-0.73.107 → modal-0.73.108}/modal/client.py +0 -0
  87. {modal-0.73.107 → modal-0.73.108}/modal/cloud_bucket_mount.py +0 -0
  88. {modal-0.73.107 → modal-0.73.108}/modal/cloud_bucket_mount.pyi +0 -0
  89. {modal-0.73.107 → modal-0.73.108}/modal/cls.py +0 -0
  90. {modal-0.73.107 → modal-0.73.108}/modal/cls.pyi +0 -0
  91. {modal-0.73.107 → modal-0.73.108}/modal/config.py +0 -0
  92. {modal-0.73.107 → modal-0.73.108}/modal/container_process.py +0 -0
  93. {modal-0.73.107 → modal-0.73.108}/modal/container_process.pyi +0 -0
  94. {modal-0.73.107 → modal-0.73.108}/modal/dict.py +0 -0
  95. {modal-0.73.107 → modal-0.73.108}/modal/dict.pyi +0 -0
  96. {modal-0.73.107 → modal-0.73.108}/modal/environments.py +0 -0
  97. {modal-0.73.107 → modal-0.73.108}/modal/environments.pyi +0 -0
  98. {modal-0.73.107 → modal-0.73.108}/modal/exception.py +0 -0
  99. {modal-0.73.107 → modal-0.73.108}/modal/experimental.py +0 -0
  100. {modal-0.73.107 → modal-0.73.108}/modal/experimental.pyi +0 -0
  101. {modal-0.73.107 → modal-0.73.108}/modal/extensions/__init__.py +0 -0
  102. {modal-0.73.107 → modal-0.73.108}/modal/extensions/ipython.py +0 -0
  103. {modal-0.73.107 → modal-0.73.108}/modal/file_io.py +0 -0
  104. {modal-0.73.107 → modal-0.73.108}/modal/file_io.pyi +0 -0
  105. {modal-0.73.107 → modal-0.73.108}/modal/file_pattern_matcher.py +0 -0
  106. {modal-0.73.107 → modal-0.73.108}/modal/functions.py +0 -0
  107. {modal-0.73.107 → modal-0.73.108}/modal/functions.pyi +0 -0
  108. {modal-0.73.107 → modal-0.73.108}/modal/gpu.py +0 -0
  109. {modal-0.73.107 → modal-0.73.108}/modal/image.pyi +0 -0
  110. {modal-0.73.107 → modal-0.73.108}/modal/io_streams.py +0 -0
  111. {modal-0.73.107 → modal-0.73.108}/modal/io_streams.pyi +0 -0
  112. {modal-0.73.107 → modal-0.73.108}/modal/mount.py +0 -0
  113. {modal-0.73.107 → modal-0.73.108}/modal/mount.pyi +0 -0
  114. {modal-0.73.107 → modal-0.73.108}/modal/network_file_system.py +0 -0
  115. {modal-0.73.107 → modal-0.73.108}/modal/network_file_system.pyi +0 -0
  116. {modal-0.73.107 → modal-0.73.108}/modal/object.py +0 -0
  117. {modal-0.73.107 → modal-0.73.108}/modal/object.pyi +0 -0
  118. {modal-0.73.107 → modal-0.73.108}/modal/output.py +0 -0
  119. {modal-0.73.107 → modal-0.73.108}/modal/parallel_map.py +0 -0
  120. {modal-0.73.107 → modal-0.73.108}/modal/parallel_map.pyi +0 -0
  121. {modal-0.73.107 → modal-0.73.108}/modal/partial_function.py +0 -0
  122. {modal-0.73.107 → modal-0.73.108}/modal/partial_function.pyi +0 -0
  123. {modal-0.73.107 → modal-0.73.108}/modal/proxy.py +0 -0
  124. {modal-0.73.107 → modal-0.73.108}/modal/proxy.pyi +0 -0
  125. {modal-0.73.107 → modal-0.73.108}/modal/py.typed +0 -0
  126. {modal-0.73.107 → modal-0.73.108}/modal/queue.py +0 -0
  127. {modal-0.73.107 → modal-0.73.108}/modal/queue.pyi +0 -0
  128. {modal-0.73.107 → modal-0.73.108}/modal/requirements/2023.12.312.txt +0 -0
  129. {modal-0.73.107 → modal-0.73.108}/modal/requirements/2023.12.txt +0 -0
  130. {modal-0.73.107 → modal-0.73.108}/modal/requirements/2024.04.txt +0 -0
  131. {modal-0.73.107 → modal-0.73.108}/modal/requirements/2024.10.txt +0 -0
  132. {modal-0.73.107 → modal-0.73.108}/modal/requirements/PREVIEW.txt +0 -0
  133. {modal-0.73.107 → modal-0.73.108}/modal/requirements/README.md +0 -0
  134. {modal-0.73.107 → modal-0.73.108}/modal/requirements/base-images.json +0 -0
  135. {modal-0.73.107 → modal-0.73.108}/modal/retries.py +0 -0
  136. {modal-0.73.107 → modal-0.73.108}/modal/runner.py +0 -0
  137. {modal-0.73.107 → modal-0.73.108}/modal/runner.pyi +0 -0
  138. {modal-0.73.107 → modal-0.73.108}/modal/running_app.py +0 -0
  139. {modal-0.73.107 → modal-0.73.108}/modal/sandbox.py +0 -0
  140. {modal-0.73.107 → modal-0.73.108}/modal/sandbox.pyi +0 -0
  141. {modal-0.73.107 → modal-0.73.108}/modal/schedule.py +0 -0
  142. {modal-0.73.107 → modal-0.73.108}/modal/scheduler_placement.py +0 -0
  143. {modal-0.73.107 → modal-0.73.108}/modal/secret.py +0 -0
  144. {modal-0.73.107 → modal-0.73.108}/modal/secret.pyi +0 -0
  145. {modal-0.73.107 → modal-0.73.108}/modal/serving.py +0 -0
  146. {modal-0.73.107 → modal-0.73.108}/modal/serving.pyi +0 -0
  147. {modal-0.73.107 → modal-0.73.108}/modal/snapshot.py +0 -0
  148. {modal-0.73.107 → modal-0.73.108}/modal/snapshot.pyi +0 -0
  149. {modal-0.73.107 → modal-0.73.108}/modal/stream_type.py +0 -0
  150. {modal-0.73.107 → modal-0.73.108}/modal/token_flow.py +0 -0
  151. {modal-0.73.107 → modal-0.73.108}/modal/token_flow.pyi +0 -0
  152. {modal-0.73.107 → modal-0.73.108}/modal/volume.py +0 -0
  153. {modal-0.73.107 → modal-0.73.108}/modal/volume.pyi +0 -0
  154. {modal-0.73.107 → modal-0.73.108}/modal.egg-info/SOURCES.txt +0 -0
  155. {modal-0.73.107 → modal-0.73.108}/modal.egg-info/dependency_links.txt +0 -0
  156. {modal-0.73.107 → modal-0.73.108}/modal.egg-info/entry_points.txt +0 -0
  157. {modal-0.73.107 → modal-0.73.108}/modal.egg-info/requires.txt +0 -0
  158. {modal-0.73.107 → modal-0.73.108}/modal.egg-info/top_level.txt +0 -0
  159. {modal-0.73.107 → modal-0.73.108}/modal_docs/__init__.py +0 -0
  160. {modal-0.73.107 → modal-0.73.108}/modal_docs/gen_cli_docs.py +0 -0
  161. {modal-0.73.107 → modal-0.73.108}/modal_docs/gen_reference_docs.py +0 -0
  162. {modal-0.73.107 → modal-0.73.108}/modal_docs/mdmd/__init__.py +0 -0
  163. {modal-0.73.107 → modal-0.73.108}/modal_docs/mdmd/mdmd.py +0 -0
  164. {modal-0.73.107 → modal-0.73.108}/modal_docs/mdmd/signatures.py +0 -0
  165. {modal-0.73.107 → modal-0.73.108}/modal_proto/__init__.py +0 -0
  166. {modal-0.73.107 → modal-0.73.108}/modal_proto/api.proto +0 -0
  167. {modal-0.73.107 → modal-0.73.108}/modal_proto/api_grpc.py +0 -0
  168. {modal-0.73.107 → modal-0.73.108}/modal_proto/api_pb2.py +0 -0
  169. {modal-0.73.107 → modal-0.73.108}/modal_proto/api_pb2.pyi +0 -0
  170. {modal-0.73.107 → modal-0.73.108}/modal_proto/api_pb2_grpc.py +0 -0
  171. {modal-0.73.107 → modal-0.73.108}/modal_proto/api_pb2_grpc.pyi +0 -0
  172. {modal-0.73.107 → modal-0.73.108}/modal_proto/modal_api_grpc.py +0 -0
  173. {modal-0.73.107 → modal-0.73.108}/modal_proto/modal_options_grpc.py +0 -0
  174. {modal-0.73.107 → modal-0.73.108}/modal_proto/options.proto +0 -0
  175. {modal-0.73.107 → modal-0.73.108}/modal_proto/options_grpc.py +0 -0
  176. {modal-0.73.107 → modal-0.73.108}/modal_proto/options_pb2.py +0 -0
  177. {modal-0.73.107 → modal-0.73.108}/modal_proto/options_pb2.pyi +0 -0
  178. {modal-0.73.107 → modal-0.73.108}/modal_proto/options_pb2_grpc.py +0 -0
  179. {modal-0.73.107 → modal-0.73.108}/modal_proto/options_pb2_grpc.pyi +0 -0
  180. {modal-0.73.107 → modal-0.73.108}/modal_proto/py.typed +0 -0
  181. {modal-0.73.107 → modal-0.73.108}/modal_version/__init__.py +0 -0
  182. {modal-0.73.107 → modal-0.73.108}/modal_version/__main__.py +0 -0
  183. {modal-0.73.107 → modal-0.73.108}/pyproject.toml +0 -0
  184. {modal-0.73.107 → modal-0.73.108}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: modal
3
- Version: 0.73.107
3
+ Version: 0.73.108
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.107",
34
+ version: str = "0.73.108",
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.107",
96
+ version: str = "0.73.108",
97
97
  ): ...
98
98
  def is_closed(self) -> bool: ...
99
99
  @property
@@ -1383,7 +1383,9 @@ class _Image(_Object, type_prefix="im"):
1383
1383
  entrypoint_commands: list[str],
1384
1384
  ) -> "_Image":
1385
1385
  """Set the entrypoint for the image."""
1386
- args_str = _flatten_str_args("entrypoint", "entrypoint_files", entrypoint_commands)
1386
+ if not isinstance(entrypoint_commands, list) or not all(isinstance(x, str) for x in entrypoint_commands):
1387
+ raise InvalidError("entrypoint_commands must be a list of strings.")
1388
+ args_str = _flatten_str_args("entrypoint", "entrypoint_commands", entrypoint_commands)
1387
1389
  args_str = '"' + '", "'.join(args_str) + '"' if args_str else ""
1388
1390
  dockerfile_cmd = f"ENTRYPOINT [{args_str}]"
1389
1391
 
@@ -1394,6 +1396,8 @@ class _Image(_Object, type_prefix="im"):
1394
1396
  shell_commands: list[str],
1395
1397
  ) -> "_Image":
1396
1398
  """Overwrite default shell for the image."""
1399
+ if not isinstance(shell_commands, list) or not all(isinstance(x, str) for x in shell_commands):
1400
+ raise InvalidError("shell_commands must be a list of strings.")
1397
1401
  args_str = _flatten_str_args("shell", "shell_commands", shell_commands)
1398
1402
  args_str = '"' + '", "'.join(args_str) + '"' if args_str else ""
1399
1403
  dockerfile_cmd = f"SHELL [{args_str}]"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: modal
3
- Version: 0.73.107
3
+ Version: 0.73.108
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 = 107 # git: 768424b
4
+ build_number = 108 # git: 06adea3
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
File without changes