modAL 1.1.5.dev30__tar.gz → 1.1.5.dev32__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.5.dev30 → modal-1.1.5.dev32}/PKG-INFO +1 -1
  2. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_functions.py +0 -2
  3. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/client.pyi +2 -2
  4. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/sandbox.py +7 -3
  5. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal.egg-info/PKG-INFO +1 -1
  6. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_version/__init__.py +1 -1
  7. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/LICENSE +0 -0
  8. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/README.md +0 -0
  9. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/__init__.py +0 -0
  10. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/__main__.py +0 -0
  11. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_clustered_functions.py +0 -0
  12. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_clustered_functions.pyi +0 -0
  13. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_container_entrypoint.py +0 -0
  14. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_ipython.py +0 -0
  15. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_location.py +0 -0
  16. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_object.py +0 -0
  17. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_output.py +0 -0
  18. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_partial_function.py +0 -0
  19. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_pty.py +0 -0
  20. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_resolver.py +0 -0
  21. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_resources.py +0 -0
  22. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_runtime/__init__.py +0 -0
  23. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_runtime/asgi.py +0 -0
  24. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_runtime/container_io_manager.py +0 -0
  25. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_runtime/container_io_manager.pyi +0 -0
  26. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_runtime/execution_context.py +0 -0
  27. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_runtime/execution_context.pyi +0 -0
  28. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_runtime/gpu_memory_snapshot.py +0 -0
  29. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_runtime/telemetry.py +0 -0
  30. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_runtime/user_code_imports.py +0 -0
  31. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_serialization.py +0 -0
  32. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_traceback.py +0 -0
  33. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_tunnel.py +0 -0
  34. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_tunnel.pyi +0 -0
  35. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_type_manager.py +0 -0
  36. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/__init__.py +0 -0
  37. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/app_utils.py +0 -0
  38. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/async_utils.py +0 -0
  39. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/auth_token_manager.py +0 -0
  40. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/blob_utils.py +0 -0
  41. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/bytes_io_segment_payload.py +0 -0
  42. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/deprecation.py +0 -0
  43. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/docker_utils.py +0 -0
  44. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/function_utils.py +0 -0
  45. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/git_utils.py +0 -0
  46. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/grpc_testing.py +0 -0
  47. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/grpc_utils.py +0 -0
  48. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/hash_utils.py +0 -0
  49. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/http_utils.py +0 -0
  50. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/jwt_utils.py +0 -0
  51. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/logger.py +0 -0
  52. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/mount_utils.py +0 -0
  53. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/name_utils.py +0 -0
  54. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/package_utils.py +0 -0
  55. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/pattern_utils.py +0 -0
  56. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/rand_pb_testing.py +0 -0
  57. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/shell_utils.py +0 -0
  58. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_utils/time_utils.py +0 -0
  59. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_vendor/__init__.py +0 -0
  60. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_vendor/a2wsgi_wsgi.py +0 -0
  61. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_vendor/cloudpickle.py +0 -0
  62. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_vendor/tblib.py +0 -0
  63. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/_watcher.py +0 -0
  64. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/app.py +0 -0
  65. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/app.pyi +0 -0
  66. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/builder/2023.12.312.txt +0 -0
  67. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/builder/2023.12.txt +0 -0
  68. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/builder/2024.04.txt +0 -0
  69. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/builder/2024.10.txt +0 -0
  70. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/builder/2025.06.txt +0 -0
  71. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/builder/PREVIEW.txt +0 -0
  72. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/builder/README.md +0 -0
  73. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/builder/base-images.json +0 -0
  74. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/call_graph.py +0 -0
  75. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/__init__.py +0 -0
  76. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/_download.py +0 -0
  77. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/_traceback.py +0 -0
  78. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/app.py +0 -0
  79. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/cluster.py +0 -0
  80. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/config.py +0 -0
  81. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/container.py +0 -0
  82. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/dict.py +0 -0
  83. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/entry_point.py +0 -0
  84. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/environment.py +0 -0
  85. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/import_refs.py +0 -0
  86. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/launch.py +0 -0
  87. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/network_file_system.py +0 -0
  88. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/profile.py +0 -0
  89. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/programs/__init__.py +0 -0
  90. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/programs/launch_instance_ssh.py +0 -0
  91. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/programs/run_jupyter.py +0 -0
  92. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/programs/run_marimo.py +0 -0
  93. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/programs/vscode.py +0 -0
  94. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/queues.py +0 -0
  95. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/run.py +0 -0
  96. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/secret.py +0 -0
  97. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/token.py +0 -0
  98. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/utils.py +0 -0
  99. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cli/volume.py +0 -0
  100. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/client.py +0 -0
  101. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cloud_bucket_mount.py +0 -0
  102. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cloud_bucket_mount.pyi +0 -0
  103. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cls.py +0 -0
  104. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/cls.pyi +0 -0
  105. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/config.py +0 -0
  106. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/container_process.py +0 -0
  107. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/container_process.pyi +0 -0
  108. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/dict.py +0 -0
  109. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/dict.pyi +0 -0
  110. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/environments.py +0 -0
  111. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/environments.pyi +0 -0
  112. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/exception.py +0 -0
  113. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/experimental/__init__.py +0 -0
  114. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/experimental/flash.py +0 -0
  115. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/experimental/flash.pyi +0 -0
  116. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/experimental/ipython.py +0 -0
  117. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/file_io.py +0 -0
  118. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/file_io.pyi +0 -0
  119. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/file_pattern_matcher.py +0 -0
  120. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/functions.py +0 -0
  121. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/functions.pyi +0 -0
  122. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/gpu.py +0 -0
  123. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/image.py +0 -0
  124. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/image.pyi +0 -0
  125. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/io_streams.py +0 -0
  126. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/io_streams.pyi +0 -0
  127. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/mount.py +0 -0
  128. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/mount.pyi +0 -0
  129. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/network_file_system.py +0 -0
  130. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/network_file_system.pyi +0 -0
  131. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/object.py +0 -0
  132. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/object.pyi +0 -0
  133. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/output.py +0 -0
  134. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/parallel_map.py +0 -0
  135. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/parallel_map.pyi +0 -0
  136. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/partial_function.py +0 -0
  137. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/partial_function.pyi +0 -0
  138. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/proxy.py +0 -0
  139. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/proxy.pyi +0 -0
  140. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/py.typed +0 -0
  141. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/queue.py +0 -0
  142. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/queue.pyi +0 -0
  143. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/retries.py +0 -0
  144. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/runner.py +0 -0
  145. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/runner.pyi +0 -0
  146. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/running_app.py +0 -0
  147. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/sandbox.pyi +0 -0
  148. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/schedule.py +0 -0
  149. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/scheduler_placement.py +0 -0
  150. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/secret.py +0 -0
  151. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/secret.pyi +0 -0
  152. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/serving.py +0 -0
  153. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/serving.pyi +0 -0
  154. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/snapshot.py +0 -0
  155. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/snapshot.pyi +0 -0
  156. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/stream_type.py +0 -0
  157. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/token_flow.py +0 -0
  158. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/token_flow.pyi +0 -0
  159. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/volume.py +0 -0
  160. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal/volume.pyi +0 -0
  161. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal.egg-info/SOURCES.txt +0 -0
  162. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal.egg-info/dependency_links.txt +0 -0
  163. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal.egg-info/entry_points.txt +0 -0
  164. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal.egg-info/requires.txt +0 -0
  165. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal.egg-info/top_level.txt +0 -0
  166. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_docs/__init__.py +0 -0
  167. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_docs/gen_cli_docs.py +0 -0
  168. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_docs/gen_reference_docs.py +0 -0
  169. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_docs/mdmd/__init__.py +0 -0
  170. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_docs/mdmd/mdmd.py +0 -0
  171. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_docs/mdmd/signatures.py +0 -0
  172. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/__init__.py +0 -0
  173. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/api.proto +0 -0
  174. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/api_grpc.py +0 -0
  175. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/api_pb2.py +0 -0
  176. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/api_pb2.pyi +0 -0
  177. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/api_pb2_grpc.py +0 -0
  178. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/api_pb2_grpc.pyi +0 -0
  179. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/modal_api_grpc.py +0 -0
  180. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/modal_options_grpc.py +0 -0
  181. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/options.proto +0 -0
  182. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/options_grpc.py +0 -0
  183. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/options_pb2.py +0 -0
  184. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/options_pb2.pyi +0 -0
  185. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/options_pb2_grpc.py +0 -0
  186. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/options_pb2_grpc.pyi +0 -0
  187. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_proto/py.typed +0 -0
  188. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/modal_version/__main__.py +0 -0
  189. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/pyproject.toml +0 -0
  190. {modal-1.1.5.dev30 → modal-1.1.5.dev32}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.1.5.dev30
3
+ Version: 1.1.5.dev32
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License: Apache-2.0
@@ -94,10 +94,8 @@ from .secret import _Secret
94
94
  from .volume import _Volume
95
95
 
96
96
  if TYPE_CHECKING:
97
- import modal._partial_function
98
97
  import modal.app
99
98
  import modal.cls
100
- import modal.partial_function
101
99
 
102
100
  MAX_INTERNAL_FAILURE_COUNT = 8
103
101
  TERMINAL_STATUSES = (
@@ -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.5.dev30",
36
+ version: str = "1.1.5.dev32",
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.5.dev30",
167
+ version: str = "1.1.5.dev32",
168
168
  ):
169
169
  """mdmd:hidden
170
170
  The Modal client object is not intended to be instantiated directly by users.
@@ -575,8 +575,12 @@ class _Sandbox(_Object, type_prefix="sb"):
575
575
  async def set_tags(self, tags: dict[str, str], *, client: Optional[_Client] = None) -> None:
576
576
  """Set tags (key-value pairs) on the Sandbox. Tags can be used to filter results in `Sandbox.list`."""
577
577
  environment_name = _get_environment_name()
578
- if client is None:
579
- client = await _Client.from_env()
578
+ if client is not None:
579
+ deprecation_warning(
580
+ (2025, 9, 18),
581
+ "The `client` parameter is deprecated. Set `client` when creating the Sandbox instead "
582
+ "(in e.g. `Sandbox.create()`/`.from_id()`/`.from_name()`).",
583
+ )
580
584
 
581
585
  tags_list = [api_pb2.SandboxTag(tag_name=name, tag_value=value) for name, value in tags.items()]
582
586
 
@@ -586,7 +590,7 @@ class _Sandbox(_Object, type_prefix="sb"):
586
590
  tags=tags_list,
587
591
  )
588
592
  try:
589
- await retry_transient_errors(client.stub.SandboxTagsSet, req)
593
+ await retry_transient_errors(self._client.stub.SandboxTagsSet, req)
590
594
  except GRPCError as exc:
591
595
  raise InvalidError(exc.message) if exc.status == Status.INVALID_ARGUMENT else exc
592
596
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.1.5.dev30
3
+ Version: 1.1.5.dev32
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
  """Supplies the current version of the modal client library."""
3
3
 
4
- __version__ = "1.1.5.dev30"
4
+ __version__ = "1.1.5.dev32"
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