modal 1.5.2.dev1__tar.gz → 1.5.2.dev3__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 (230) hide show
  1. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/PKG-INFO +1 -1
  2. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/client.pyi +2 -2
  3. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/functions.pyi +6 -6
  4. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/sandbox.py +4 -0
  5. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/sandbox.pyi +3 -0
  6. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal.egg-info/PKG-INFO +1 -1
  7. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/api_pb2_grpc.py +1 -1
  8. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/api_pb2_grpc.pyi +2 -2
  9. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_version/__init__.py +1 -1
  10. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/LICENSE +0 -0
  11. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/README.md +0 -0
  12. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/__init__.py +0 -0
  13. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/__main__.py +0 -0
  14. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_billing.py +0 -0
  15. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_clustered_functions.py +0 -0
  16. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_clustered_functions.pyi +0 -0
  17. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_container_entrypoint.py +0 -0
  18. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_environments.py +0 -0
  19. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_function_variants.py +0 -0
  20. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_functions.py +0 -0
  21. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_grpc_client.py +0 -0
  22. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_image.py +0 -0
  23. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_ipython.py +0 -0
  24. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_load_context.py +0 -0
  25. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_location.py +0 -0
  26. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_logs.py +0 -0
  27. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_object.py +0 -0
  28. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_output/__init__.py +0 -0
  29. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_output/manager.py +0 -0
  30. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_output/pty.py +0 -0
  31. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_output/rich.py +0 -0
  32. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_output/status.py +0 -0
  33. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_partial_function.py +0 -0
  34. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_resolver.py +0 -0
  35. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_resources.py +0 -0
  36. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_runtime/__init__.py +0 -0
  37. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_runtime/asgi.py +0 -0
  38. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_runtime/container_io_manager.py +0 -0
  39. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_runtime/container_io_manager.pyi +0 -0
  40. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_runtime/execution_context.py +0 -0
  41. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_runtime/execution_context.pyi +0 -0
  42. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_runtime/gpu_memory_snapshot.py +0 -0
  43. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_runtime/task_lifecycle_manager.py +0 -0
  44. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_runtime/task_lifecycle_manager.pyi +0 -0
  45. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_runtime/telemetry.py +0 -0
  46. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_runtime/user_code_event_loop.py +0 -0
  47. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_runtime/user_code_imports.py +0 -0
  48. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_serialization.py +0 -0
  49. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_server.py +0 -0
  50. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_traceback.py +0 -0
  51. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_tunnel.py +0 -0
  52. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_tunnel.pyi +0 -0
  53. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_type_manager.py +0 -0
  54. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/__init__.py +0 -0
  55. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/app_utils.py +0 -0
  56. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/async_utils.py +0 -0
  57. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/auth_token_manager.py +0 -0
  58. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/blob_utils.py +0 -0
  59. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/browser_utils.py +0 -0
  60. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/bytes_io_segment_payload.py +0 -0
  61. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/curl_utils.py +0 -0
  62. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/deprecation.py +0 -0
  63. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/docker_utils.py +0 -0
  64. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/function_utils.py +0 -0
  65. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/git_utils.py +0 -0
  66. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/grpc_testing.py +0 -0
  67. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/grpc_utils.py +0 -0
  68. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/hash_utils.py +0 -0
  69. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/http_utils.py +0 -0
  70. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/jwt_utils.py +0 -0
  71. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/logger.py +0 -0
  72. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/mount_utils.py +0 -0
  73. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/name_utils.py +0 -0
  74. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/package_utils.py +0 -0
  75. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/pattern_utils.py +0 -0
  76. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/proxy_support.py +0 -0
  77. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/rand_pb_testing.py +0 -0
  78. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/sandbox_fs_utils.py +0 -0
  79. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/shell_utils.py +0 -0
  80. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/task_command_router_client.py +0 -0
  81. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_utils/time_utils.py +0 -0
  82. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_vendor/__init__.py +0 -0
  83. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_vendor/a2wsgi_wsgi.py +0 -0
  84. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_vendor/cloudpickle.py +0 -0
  85. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_vendor/tblib.py +0 -0
  86. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_vendor/version.py +0 -0
  87. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_watcher.py +0 -0
  88. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/_workspace.py +0 -0
  89. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/app.py +0 -0
  90. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/app.pyi +0 -0
  91. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/billing.py +0 -0
  92. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/billing.pyi +0 -0
  93. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/builder/2023.12.312.txt +0 -0
  94. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/builder/2023.12.txt +0 -0
  95. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/builder/2024.04.txt +0 -0
  96. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/builder/2024.10.txt +0 -0
  97. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/builder/2025.06.txt +0 -0
  98. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/builder/PREVIEW.txt +0 -0
  99. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/builder/README.md +0 -0
  100. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/builder/base-images.json +0 -0
  101. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/call_graph.py +0 -0
  102. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/__init__.py +0 -0
  103. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/_download.py +0 -0
  104. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/_help.py +0 -0
  105. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/_traceback.py +0 -0
  106. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/app.py +0 -0
  107. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/billing.py +0 -0
  108. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/bootstrap.py +0 -0
  109. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/changelog.py +0 -0
  110. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/cluster.py +0 -0
  111. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/config.py +0 -0
  112. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/container.py +0 -0
  113. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/curl.py +0 -0
  114. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/dashboard.py +0 -0
  115. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/dict.py +0 -0
  116. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/endpoint.py +0 -0
  117. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/entry_point.py +0 -0
  118. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/environment.py +0 -0
  119. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/image.py +0 -0
  120. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/import_refs.py +0 -0
  121. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/launch.py +0 -0
  122. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/logo.py +0 -0
  123. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/network_file_system.py +0 -0
  124. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/profile.py +0 -0
  125. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/programs/__init__.py +0 -0
  126. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/programs/run_jupyter.py +0 -0
  127. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/programs/vscode.py +0 -0
  128. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/queues.py +0 -0
  129. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/run.py +0 -0
  130. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/secret.py +0 -0
  131. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/selector.py +0 -0
  132. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/shell.py +0 -0
  133. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/skills.py +0 -0
  134. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/token.py +0 -0
  135. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/utils.py +0 -0
  136. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/volume.py +0 -0
  137. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cli/workspace.py +0 -0
  138. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/client.py +0 -0
  139. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cloud_bucket_mount.py +0 -0
  140. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cloud_bucket_mount.pyi +0 -0
  141. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cls.py +0 -0
  142. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/cls.pyi +0 -0
  143. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/config.py +0 -0
  144. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/container_process.py +0 -0
  145. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/container_process.pyi +0 -0
  146. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/dict.py +0 -0
  147. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/dict.pyi +0 -0
  148. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/environments.py +0 -0
  149. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/environments.pyi +0 -0
  150. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/exception.py +0 -0
  151. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/experimental/__init__.py +0 -0
  152. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/experimental/flash.py +0 -0
  153. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/experimental/flash.pyi +0 -0
  154. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/experimental/ipython.py +0 -0
  155. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/file_io.py +0 -0
  156. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/file_io.pyi +0 -0
  157. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/file_pattern_matcher.py +0 -0
  158. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/functions.py +0 -0
  159. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/image.py +0 -0
  160. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/image.pyi +0 -0
  161. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/io_streams.py +0 -0
  162. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/io_streams.pyi +0 -0
  163. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/mount.py +0 -0
  164. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/mount.pyi +0 -0
  165. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/network_file_system.py +0 -0
  166. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/network_file_system.pyi +0 -0
  167. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/object.py +0 -0
  168. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/object.pyi +0 -0
  169. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/output.py +0 -0
  170. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/parallel_map.py +0 -0
  171. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/parallel_map.pyi +0 -0
  172. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/partial_function.py +0 -0
  173. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/partial_function.pyi +0 -0
  174. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/proxy.py +0 -0
  175. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/proxy.pyi +0 -0
  176. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/py.typed +0 -0
  177. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/queue.py +0 -0
  178. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/queue.pyi +0 -0
  179. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/retries.py +0 -0
  180. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/runner.py +0 -0
  181. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/runner.pyi +0 -0
  182. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/running_app.py +0 -0
  183. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/sandbox_fs.py +0 -0
  184. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/sandbox_fs.pyi +0 -0
  185. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/schedule.py +0 -0
  186. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/scheduler_placement.py +0 -0
  187. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/secret.py +0 -0
  188. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/secret.pyi +0 -0
  189. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/server.py +0 -0
  190. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/server.pyi +0 -0
  191. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/serving.py +0 -0
  192. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/serving.pyi +0 -0
  193. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/skills/modal/SKILL.md +0 -0
  194. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/snapshot.py +0 -0
  195. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/snapshot.pyi +0 -0
  196. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/stream_type.py +0 -0
  197. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/token_flow.py +0 -0
  198. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/token_flow.pyi +0 -0
  199. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/volume.py +0 -0
  200. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/volume.pyi +0 -0
  201. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/workspace.py +0 -0
  202. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal/workspace.pyi +0 -0
  203. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal.egg-info/SOURCES.txt +0 -0
  204. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal.egg-info/dependency_links.txt +0 -0
  205. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal.egg-info/entry_points.txt +0 -0
  206. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal.egg-info/requires.txt +0 -0
  207. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal.egg-info/top_level.txt +0 -0
  208. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_docs/__init__.py +0 -0
  209. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_docs/gen_cli_docs.py +0 -0
  210. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_docs/gen_cli_docs_main.py +0 -0
  211. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_docs/gen_reference_docs.py +0 -0
  212. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_docs/gen_reference_docs_main.py +0 -0
  213. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_docs/mdmd/__init__.py +0 -0
  214. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_docs/mdmd/mdmd.py +0 -0
  215. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_docs/mdmd/signatures.py +0 -0
  216. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_docs/mdmd/types.py +0 -0
  217. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/__init__.py +0 -0
  218. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/api_grpc.py +0 -0
  219. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/api_pb2.py +0 -0
  220. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/api_pb2.pyi +0 -0
  221. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/modal_api_grpc.py +0 -0
  222. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/py.typed +0 -0
  223. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/task_command_router_grpc.py +0 -0
  224. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/task_command_router_pb2.py +0 -0
  225. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/task_command_router_pb2.pyi +0 -0
  226. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/task_command_router_pb2_grpc.py +0 -0
  227. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_proto/task_command_router_pb2_grpc.pyi +0 -0
  228. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/modal_version/__main__.py +0 -0
  229. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/pyproject.toml +0 -0
  230. {modal-1.5.2.dev1 → modal-1.5.2.dev3}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.5.2.dev1
3
+ Version: 1.5.2.dev3
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License-Expression: Apache-2.0
@@ -35,7 +35,7 @@ class _Client:
35
35
  server_url: str,
36
36
  client_type: int,
37
37
  credentials: typing.Optional[tuple[str, str]],
38
- version: str = "1.5.2.dev1",
38
+ version: str = "1.5.2.dev3",
39
39
  ):
40
40
  """mdmd:hidden
41
41
  The Modal client object is not intended to be instantiated directly by users.
@@ -205,7 +205,7 @@ class Client:
205
205
  server_url: str,
206
206
  client_type: int,
207
207
  credentials: typing.Optional[tuple[str, str]],
208
- version: str = "1.5.2.dev1",
208
+ version: str = "1.5.2.dev3",
209
209
  ):
210
210
  """mdmd:hidden
211
211
  The Modal client object is not intended to be instantiated directly by users.
@@ -490,7 +490,7 @@ class Function(
490
490
 
491
491
  _call_generator: ___call_generator_spec
492
492
 
493
- class __remote_spec(typing_extensions.Protocol[P_INNER, ReturnType_INNER]):
493
+ class __remote_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER]):
494
494
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> ReturnType_INNER:
495
495
  """Calls the function remotely, executing it with the given arguments and returning the execution's result.
496
496
 
@@ -515,7 +515,7 @@ class Function(
515
515
  """
516
516
  ...
517
517
 
518
- remote: __remote_spec[modal._functions.P, modal._functions.ReturnType]
518
+ remote: __remote_spec[modal._functions.ReturnType, modal._functions.P]
519
519
 
520
520
  class __remote_gen_spec(typing_extensions.Protocol):
521
521
  def __call__(self, /, *args, **kwargs) -> typing.Generator[typing.Any, None, None]:
@@ -565,7 +565,7 @@ class Function(
565
565
  """
566
566
  ...
567
567
 
568
- class ___experimental_spawn_spec(typing_extensions.Protocol[P_INNER, ReturnType_INNER]):
568
+ class ___experimental_spawn_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER]):
569
569
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> FunctionCall[ReturnType_INNER]:
570
570
  """[Experimental] Calls the function with the given arguments, without waiting for the results.
571
571
 
@@ -598,7 +598,7 @@ class Function(
598
598
  """
599
599
  ...
600
600
 
601
- _experimental_spawn: ___experimental_spawn_spec[modal._functions.P, modal._functions.ReturnType]
601
+ _experimental_spawn: ___experimental_spawn_spec[modal._functions.ReturnType, modal._functions.P]
602
602
 
603
603
  class ___spawn_map_inner_spec(typing_extensions.Protocol[P_INNER]):
604
604
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> None: ...
@@ -606,7 +606,7 @@ class Function(
606
606
 
607
607
  _spawn_map_inner: ___spawn_map_inner_spec[modal._functions.P]
608
608
 
609
- class __spawn_spec(typing_extensions.Protocol[P_INNER, ReturnType_INNER]):
609
+ class __spawn_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER]):
610
610
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> FunctionCall[ReturnType_INNER]:
611
611
  """Calls the function with the given arguments, without waiting for the results.
612
612
 
@@ -639,7 +639,7 @@ class Function(
639
639
  """
640
640
  ...
641
641
 
642
- spawn: __spawn_spec[modal._functions.P, modal._functions.ReturnType]
642
+ spawn: __spawn_spec[modal._functions.ReturnType, modal._functions.P]
643
643
 
644
644
  def get_raw_f(self) -> collections.abc.Callable[..., typing.Any]:
645
645
  """Return the inner Python object wrapped by this Modal Function.
@@ -849,6 +849,7 @@ class _Sandbox(_Object, type_prefix="sb"):
849
849
  unencrypted_ports: Sequence[int] = [],
850
850
  proxy: _Proxy | None = None,
851
851
  readiness_probe: Probe | None = None,
852
+ experimental_options: dict[str, Any] | None = None,
852
853
  include_oidc_identity_token: bool = False,
853
854
  verbose: bool = False,
854
855
  client: _Client | None = None,
@@ -994,6 +995,9 @@ class _Sandbox(_Object, type_prefix="sb"):
994
995
  volume_mounts=volume_mounts,
995
996
  cloud_bucket_mounts=cloud_bucket_mounts_to_proto(cloud_bucket_mounts),
996
997
  readiness_probe=(readiness_probe._to_proto() if readiness_probe else None),
998
+ experimental_options_v2=(
999
+ {k: str(v) for k, v in experimental_options.items()} if experimental_options else None
1000
+ ),
997
1001
  )
998
1002
 
999
1003
  create_req = api_pb2.SandboxCreateV2Request(
@@ -415,6 +415,7 @@ class _Sandbox(modal._object._Object):
415
415
  unencrypted_ports: collections.abc.Sequence[int] = [],
416
416
  proxy: typing.Optional[modal.proxy._Proxy] = None,
417
417
  readiness_probe: typing.Optional[Probe] = None,
418
+ experimental_options: typing.Optional[dict[str, typing.Any]] = None,
418
419
  include_oidc_identity_token: bool = False,
419
420
  verbose: bool = False,
420
421
  client: typing.Optional[modal.client._Client] = None,
@@ -1647,6 +1648,7 @@ class Sandbox(modal.object.Object):
1647
1648
  unencrypted_ports: collections.abc.Sequence[int] = [],
1648
1649
  proxy: typing.Optional[modal.proxy.Proxy] = None,
1649
1650
  readiness_probe: typing.Optional[Probe] = None,
1651
+ experimental_options: typing.Optional[dict[str, typing.Any]] = None,
1650
1652
  include_oidc_identity_token: bool = False,
1651
1653
  verbose: bool = False,
1652
1654
  client: typing.Optional[modal.client.Client] = None,
@@ -1706,6 +1708,7 @@ class Sandbox(modal.object.Object):
1706
1708
  unencrypted_ports: collections.abc.Sequence[int] = [],
1707
1709
  proxy: typing.Optional[modal.proxy.Proxy] = None,
1708
1710
  readiness_probe: typing.Optional[Probe] = None,
1711
+ experimental_options: typing.Optional[dict[str, typing.Any]] = None,
1709
1712
  include_oidc_identity_token: bool = False,
1710
1713
  verbose: bool = False,
1711
1714
  client: typing.Optional[modal.client.Client] = None,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.5.2.dev1
3
+ Version: 1.5.2.dev3
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License-Expression: Apache-2.0
@@ -2388,7 +2388,7 @@ class ModalClientServicer(object):
2388
2388
  raise NotImplementedError('Method not implemented!')
2389
2389
 
2390
2390
  def WebhookTokenCreate(self, request, context):
2391
- """Webhook tokens (proxy auth tokens)
2391
+ """Webhook tokens (proxy tokens)
2392
2392
  """
2393
2393
  context.set_code(grpc.StatusCode.UNIMPLEMENTED)
2394
2394
  context.set_details('Method not implemented!')
@@ -877,7 +877,7 @@ class ModalClientStub:
877
877
  modal_proto.api_pb2.WebhookTokenCreateRequest,
878
878
  modal_proto.api_pb2.TokenCreateResponse,
879
879
  ]
880
- """Webhook tokens (proxy auth tokens)"""
880
+ """Webhook tokens (proxy tokens)"""
881
881
  WebhookTokenDelete: grpc.UnaryUnaryMultiCallable[
882
882
  modal_proto.api_pb2.TokenDeleteRequest,
883
883
  google.protobuf.empty_pb2.Empty,
@@ -2204,7 +2204,7 @@ class ModalClientServicer(metaclass=abc.ABCMeta):
2204
2204
  request: modal_proto.api_pb2.WebhookTokenCreateRequest,
2205
2205
  context: grpc.ServicerContext,
2206
2206
  ) -> modal_proto.api_pb2.TokenCreateResponse:
2207
- """Webhook tokens (proxy auth tokens)"""
2207
+ """Webhook tokens (proxy tokens)"""
2208
2208
  @abc.abstractmethod
2209
2209
  def WebhookTokenDelete(
2210
2210
  self,
@@ -1,4 +1,4 @@
1
1
  # Copyright Modal Labs 2026
2
2
  """Supplies the current version of the modal client library."""
3
3
 
4
- __version__ = "1.5.2.dev1"
4
+ __version__ = "1.5.2.dev3"
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