modal 1.4.4.dev11__tar.gz → 1.4.4.dev12__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 (219) hide show
  1. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/PKG-INFO +1 -1
  2. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/client.pyi +2 -2
  3. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/functions.pyi +6 -6
  4. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal.egg-info/PKG-INFO +1 -1
  5. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/task_command_router_pb2.py +23 -23
  6. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/task_command_router_pb2.pyi +20 -3
  7. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_version/__init__.py +1 -1
  8. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/LICENSE +0 -0
  9. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/README.md +0 -0
  10. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/__init__.py +0 -0
  11. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/__main__.py +0 -0
  12. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_billing.py +0 -0
  13. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_clustered_functions.py +0 -0
  14. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_clustered_functions.pyi +0 -0
  15. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_container_entrypoint.py +0 -0
  16. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_environments.py +0 -0
  17. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_function_variants.py +0 -0
  18. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_functions.py +0 -0
  19. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_grpc_client.py +0 -0
  20. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_ipython.py +0 -0
  21. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_load_context.py +0 -0
  22. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_location.py +0 -0
  23. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_logs.py +0 -0
  24. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_object.py +0 -0
  25. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_output/__init__.py +0 -0
  26. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_output/manager.py +0 -0
  27. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_output/pty.py +0 -0
  28. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_output/rich.py +0 -0
  29. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_output/status.py +0 -0
  30. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_partial_function.py +0 -0
  31. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_resolver.py +0 -0
  32. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_resources.py +0 -0
  33. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_runtime/__init__.py +0 -0
  34. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_runtime/asgi.py +0 -0
  35. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_runtime/container_io_manager.py +0 -0
  36. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_runtime/container_io_manager.pyi +0 -0
  37. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_runtime/execution_context.py +0 -0
  38. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_runtime/execution_context.pyi +0 -0
  39. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_runtime/gpu_memory_snapshot.py +0 -0
  40. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_runtime/task_lifecycle_manager.py +0 -0
  41. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_runtime/task_lifecycle_manager.pyi +0 -0
  42. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_runtime/telemetry.py +0 -0
  43. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_runtime/user_code_event_loop.py +0 -0
  44. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_runtime/user_code_imports.py +0 -0
  45. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_serialization.py +0 -0
  46. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_server.py +0 -0
  47. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_traceback.py +0 -0
  48. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_tunnel.py +0 -0
  49. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_tunnel.pyi +0 -0
  50. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_type_manager.py +0 -0
  51. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/__init__.py +0 -0
  52. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/app_utils.py +0 -0
  53. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/async_utils.py +0 -0
  54. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/auth_token_manager.py +0 -0
  55. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/blob_utils.py +0 -0
  56. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/browser_utils.py +0 -0
  57. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/bytes_io_segment_payload.py +0 -0
  58. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/deprecation.py +0 -0
  59. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/docker_utils.py +0 -0
  60. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/function_utils.py +0 -0
  61. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/git_utils.py +0 -0
  62. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/grpc_testing.py +0 -0
  63. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/grpc_utils.py +0 -0
  64. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/hash_utils.py +0 -0
  65. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/http_utils.py +0 -0
  66. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/jwt_utils.py +0 -0
  67. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/logger.py +0 -0
  68. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/mount_utils.py +0 -0
  69. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/name_utils.py +0 -0
  70. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/package_utils.py +0 -0
  71. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/pattern_utils.py +0 -0
  72. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/rand_pb_testing.py +0 -0
  73. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/sandbox_fs_utils.py +0 -0
  74. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/shell_utils.py +0 -0
  75. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/task_command_router_client.py +0 -0
  76. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_utils/time_utils.py +0 -0
  77. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_vendor/__init__.py +0 -0
  78. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_vendor/a2wsgi_wsgi.py +0 -0
  79. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_vendor/cloudpickle.py +0 -0
  80. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_vendor/tblib.py +0 -0
  81. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_vendor/version.py +0 -0
  82. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_watcher.py +0 -0
  83. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/_workspace.py +0 -0
  84. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/app.py +0 -0
  85. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/app.pyi +0 -0
  86. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/billing.py +0 -0
  87. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/builder/2023.12.312.txt +0 -0
  88. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/builder/2023.12.txt +0 -0
  89. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/builder/2024.04.txt +0 -0
  90. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/builder/2024.10.txt +0 -0
  91. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/builder/2025.06.txt +0 -0
  92. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/builder/PREVIEW.txt +0 -0
  93. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/builder/README.md +0 -0
  94. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/builder/base-images.json +0 -0
  95. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/call_graph.py +0 -0
  96. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/__init__.py +0 -0
  97. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/_download.py +0 -0
  98. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/_help.py +0 -0
  99. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/_traceback.py +0 -0
  100. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/app.py +0 -0
  101. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/billing.py +0 -0
  102. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/bootstrap.py +0 -0
  103. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/changelog.py +0 -0
  104. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/cluster.py +0 -0
  105. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/config.py +0 -0
  106. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/container.py +0 -0
  107. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/dashboard.py +0 -0
  108. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/dict.py +0 -0
  109. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/entry_point.py +0 -0
  110. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/environment.py +0 -0
  111. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/import_refs.py +0 -0
  112. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/launch.py +0 -0
  113. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/logo.py +0 -0
  114. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/network_file_system.py +0 -0
  115. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/profile.py +0 -0
  116. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/programs/__init__.py +0 -0
  117. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/programs/run_jupyter.py +0 -0
  118. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/programs/vscode.py +0 -0
  119. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/queues.py +0 -0
  120. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/run.py +0 -0
  121. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/secret.py +0 -0
  122. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/selector.py +0 -0
  123. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/shell.py +0 -0
  124. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/token.py +0 -0
  125. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/utils.py +0 -0
  126. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cli/volume.py +0 -0
  127. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/client.py +0 -0
  128. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cloud_bucket_mount.py +0 -0
  129. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cloud_bucket_mount.pyi +0 -0
  130. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cls.py +0 -0
  131. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/cls.pyi +0 -0
  132. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/config.py +0 -0
  133. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/container_process.py +0 -0
  134. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/container_process.pyi +0 -0
  135. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/dict.py +0 -0
  136. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/dict.pyi +0 -0
  137. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/environments.py +0 -0
  138. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/environments.pyi +0 -0
  139. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/exception.py +0 -0
  140. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/experimental/__init__.py +0 -0
  141. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/experimental/flash.py +0 -0
  142. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/experimental/flash.pyi +0 -0
  143. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/experimental/ipython.py +0 -0
  144. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/file_io.py +0 -0
  145. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/file_io.pyi +0 -0
  146. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/file_pattern_matcher.py +0 -0
  147. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/functions.py +0 -0
  148. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/image.py +0 -0
  149. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/image.pyi +0 -0
  150. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/io_streams.py +0 -0
  151. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/io_streams.pyi +0 -0
  152. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/mount.py +0 -0
  153. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/mount.pyi +0 -0
  154. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/network_file_system.py +0 -0
  155. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/network_file_system.pyi +0 -0
  156. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/object.py +0 -0
  157. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/object.pyi +0 -0
  158. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/output.py +0 -0
  159. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/parallel_map.py +0 -0
  160. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/parallel_map.pyi +0 -0
  161. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/partial_function.py +0 -0
  162. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/partial_function.pyi +0 -0
  163. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/proxy.py +0 -0
  164. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/proxy.pyi +0 -0
  165. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/py.typed +0 -0
  166. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/queue.py +0 -0
  167. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/queue.pyi +0 -0
  168. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/retries.py +0 -0
  169. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/runner.py +0 -0
  170. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/runner.pyi +0 -0
  171. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/running_app.py +0 -0
  172. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/sandbox.py +0 -0
  173. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/sandbox.pyi +0 -0
  174. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/sandbox_fs.py +0 -0
  175. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/sandbox_fs.pyi +0 -0
  176. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/schedule.py +0 -0
  177. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/scheduler_placement.py +0 -0
  178. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/secret.py +0 -0
  179. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/secret.pyi +0 -0
  180. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/server.py +0 -0
  181. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/server.pyi +0 -0
  182. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/serving.py +0 -0
  183. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/serving.pyi +0 -0
  184. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/snapshot.py +0 -0
  185. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/snapshot.pyi +0 -0
  186. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/stream_type.py +0 -0
  187. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/token_flow.py +0 -0
  188. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/token_flow.pyi +0 -0
  189. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/volume.py +0 -0
  190. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/volume.pyi +0 -0
  191. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/workspace.py +0 -0
  192. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal/workspace.pyi +0 -0
  193. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal.egg-info/SOURCES.txt +0 -0
  194. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal.egg-info/dependency_links.txt +0 -0
  195. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal.egg-info/entry_points.txt +0 -0
  196. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal.egg-info/requires.txt +0 -0
  197. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal.egg-info/top_level.txt +0 -0
  198. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_docs/__init__.py +0 -0
  199. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_docs/gen_cli_docs.py +0 -0
  200. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_docs/gen_cli_docs_main.py +0 -0
  201. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_docs/gen_reference_docs.py +0 -0
  202. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_docs/gen_reference_docs_main.py +0 -0
  203. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_docs/mdmd/__init__.py +0 -0
  204. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_docs/mdmd/mdmd.py +0 -0
  205. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_docs/mdmd/signatures.py +0 -0
  206. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/__init__.py +0 -0
  207. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/api_grpc.py +0 -0
  208. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/api_pb2.py +0 -0
  209. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/api_pb2.pyi +0 -0
  210. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/api_pb2_grpc.py +0 -0
  211. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/api_pb2_grpc.pyi +0 -0
  212. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/modal_api_grpc.py +0 -0
  213. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/py.typed +0 -0
  214. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/task_command_router_grpc.py +0 -0
  215. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/task_command_router_pb2_grpc.py +0 -0
  216. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_proto/task_command_router_pb2_grpc.pyi +0 -0
  217. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/modal_version/__main__.py +0 -0
  218. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/pyproject.toml +0 -0
  219. {modal-1.4.4.dev11 → modal-1.4.4.dev12}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.4.4.dev11
3
+ Version: 1.4.4.dev12
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.4.4.dev11",
38
+ version: str = "1.4.4.dev12",
39
39
  ):
40
40
  """mdmd:hidden
41
41
  The Modal client object is not intended to be instantiated directly by users.
@@ -175,7 +175,7 @@ class Client:
175
175
  server_url: str,
176
176
  client_type: int,
177
177
  credentials: typing.Optional[tuple[str, str]],
178
- version: str = "1.4.4.dev11",
178
+ version: str = "1.4.4.dev12",
179
179
  ):
180
180
  """mdmd:hidden
181
181
  The Modal client object is not intended to be instantiated directly by users.
@@ -421,7 +421,7 @@ class Function(
421
421
 
422
422
  _call_generator: ___call_generator_spec
423
423
 
424
- class __remote_spec(typing_extensions.Protocol[P_INNER, ReturnType_INNER]):
424
+ class __remote_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER]):
425
425
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> ReturnType_INNER:
426
426
  """Calls the function remotely, executing it with the given arguments and returning the execution's result."""
427
427
  ...
@@ -430,7 +430,7 @@ class Function(
430
430
  """Calls the function remotely, executing it with the given arguments and returning the execution's result."""
431
431
  ...
432
432
 
433
- remote: __remote_spec[modal._functions.P, modal._functions.ReturnType]
433
+ remote: __remote_spec[modal._functions.ReturnType, modal._functions.P]
434
434
 
435
435
  class __remote_gen_spec(typing_extensions.Protocol):
436
436
  def __call__(self, /, *args, **kwargs) -> typing.Generator[typing.Any, None, None]:
@@ -457,7 +457,7 @@ class Function(
457
457
  """
458
458
  ...
459
459
 
460
- class ___experimental_spawn_spec(typing_extensions.Protocol[P_INNER, ReturnType_INNER]):
460
+ class ___experimental_spawn_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER]):
461
461
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> FunctionCall[ReturnType_INNER]:
462
462
  """[Experimental] Calls the function with the given arguments, without waiting for the results.
463
463
 
@@ -480,7 +480,7 @@ class Function(
480
480
  """
481
481
  ...
482
482
 
483
- _experimental_spawn: ___experimental_spawn_spec[modal._functions.P, modal._functions.ReturnType]
483
+ _experimental_spawn: ___experimental_spawn_spec[modal._functions.ReturnType, modal._functions.P]
484
484
 
485
485
  class ___spawn_map_inner_spec(typing_extensions.Protocol[P_INNER]):
486
486
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> None: ...
@@ -488,7 +488,7 @@ class Function(
488
488
 
489
489
  _spawn_map_inner: ___spawn_map_inner_spec[modal._functions.P]
490
490
 
491
- class __spawn_spec(typing_extensions.Protocol[P_INNER, ReturnType_INNER]):
491
+ class __spawn_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER]):
492
492
  def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> FunctionCall[ReturnType_INNER]:
493
493
  """Calls the function with the given arguments, without waiting for the results.
494
494
 
@@ -509,7 +509,7 @@ class Function(
509
509
  """
510
510
  ...
511
511
 
512
- spawn: __spawn_spec[modal._functions.P, modal._functions.ReturnType]
512
+ spawn: __spawn_spec[modal._functions.ReturnType, modal._functions.P]
513
513
 
514
514
  def get_raw_f(self) -> collections.abc.Callable[..., typing.Any]:
515
515
  """Return the inner Python object wrapped by this Modal Function."""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.4.4.dev11
3
+ Version: 1.4.4.dev12
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License-Expression: Apache-2.0
@@ -17,7 +17,7 @@ from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2
17
17
  from modal_proto import api_pb2 as modal__proto_dot_api__pb2
18
18
 
19
19
 
20
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n%modal_proto/task_command_router.proto\x12\x19modal.task_command_router\x1a\x1bgoogle/protobuf/empty.proto\x1a\x15modal_proto/api.proto\"X\n\x1aSandboxStdinWriteV2Request\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\x02 \x01(\x04\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\x12\x0b\n\x03\x65of\x18\x04 \x01(\x08\"\x1d\n\x1bSandboxStdinWriteV2Response\"\x8c\x01\n\x19SandboxStdioReadV2Request\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\x02 \x01(\x04\x12N\n\x0f\x66ile_descriptor\x18\x03 \x01(\x0e\x32\x35.modal.task_command_router.SandboxStdioFileDescriptor\"C\n\x1aSandboxStdioReadV2Response\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\x17\n\x0fstarting_offset\x18\x02 \x01(\x04\"\x83\x02\n\x1aTaskContainerCreateRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x16\n\x0e\x63ontainer_name\x18\x02 \x01(\t\x12\x10\n\x08image_id\x18\x03 \x01(\t\x12\x0c\n\x04\x61rgs\x18\x05 \x03(\t\x12K\n\x03\x65nv\x18\x06 \x03(\x0b\x32>.modal.task_command_router.TaskContainerCreateRequest.EnvEntry\x12\x0f\n\x07workdir\x18\x07 \x01(\t\x12\x12\n\nsecret_ids\x18\x08 \x03(\t\x1a*\n\x08\x45nvEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"K\n\x1bTaskContainerCreateResponse\x12\x14\n\x0c\x63ontainer_id\x18\x01 \x01(\t\x12\x16\n\x0e\x63ontainer_name\x18\x02 \x01(\t\"^\n\x17TaskContainerGetRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x16\n\x0e\x63ontainer_name\x18\x02 \x01(\t\x12\x1a\n\x12include_terminated\x18\x03 \x01(\x08\"[\n\x18TaskContainerGetResponse\x12?\n\tcontainer\x18\x01 \x01(\x0b\x32,.modal.task_command_router.TaskContainerInfo\"~\n\x11TaskContainerInfo\x12\x14\n\x0c\x63ontainer_id\x18\x01 \x01(\t\x12\x16\n\x0e\x63ontainer_name\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\x12+\n\x06result\x18\x04 \x01(\x0b\x32\x1b.modal.client.GenericResult\"G\n\x18TaskContainerListRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x1a\n\x12include_terminated\x18\x02 \x01(\x08\"]\n\x19TaskContainerListResponse\x12@\n\ncontainers\x18\x01 \x03(\x0b\x32,.modal.task_command_router.TaskContainerInfo\"F\n\x1dTaskContainerTerminateRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x14\n\x0c\x63ontainer_id\x18\x02 \x01(\t\" \n\x1eTaskContainerTerminateResponse\"R\n\x18TaskContainerWaitRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x14\n\x0c\x63ontainer_id\x18\x02 \x01(\t\x12\x0f\n\x07timeout\x18\x03 \x01(\x02\"H\n\x19TaskContainerWaitResponse\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\"7\n\x13TaskExecPollRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\"G\n\x14TaskExecPollResponse\x12\x0e\n\x04\x63ode\x18\x01 \x01(\x05H\x00\x12\x10\n\x06signal\x18\x02 \x01(\x05H\x00\x42\r\n\x0b\x65xit_status\"\x9b\x04\n\x14TaskExecStartRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\x12\x14\n\x0c\x63ommand_args\x18\x03 \x03(\t\x12\x46\n\rstdout_config\x18\x04 \x01(\x0e\x32/.modal.task_command_router.TaskExecStdoutConfig\x12\x46\n\rstderr_config\x18\x05 \x01(\x0e\x32/.modal.task_command_router.TaskExecStderrConfig\x12\x19\n\x0ctimeout_secs\x18\x06 \x01(\rH\x00\x88\x01\x01\x12\x14\n\x07workdir\x18\x07 \x01(\tH\x01\x88\x01\x01\x12\x12\n\nsecret_ids\x18\x08 \x03(\t\x12,\n\x08pty_info\x18\t \x01(\x0b\x32\x15.modal.client.PTYInfoH\x02\x88\x01\x01\x12\x15\n\rruntime_debug\x18\n \x01(\x08\x12\x14\n\x0c\x63ontainer_id\x18\x0b \x01(\t\x12\x45\n\x03\x65nv\x18\x0c \x03(\x0b\x32\x38.modal.task_command_router.TaskExecStartRequest.EnvEntry\x1a*\n\x08\x45nvEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0f\n\r_timeout_secsB\n\n\x08_workdirB\x0b\n\t_pty_info\"\x17\n\x15TaskExecStartResponse\">\n\x1aTaskExecStdinStatusRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\"H\n\x1bTaskExecStdinStatusResponse\x12\x19\n\x11num_bytes_written\x18\x01 \x01(\x04\x12\x0e\n\x06\x63losed\x18\x02 \x01(\x08\"h\n\x19TaskExecStdinWriteRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\x12\x0e\n\x06offset\x18\x03 \x01(\x04\x12\x0c\n\x04\x64\x61ta\x18\x04 \x01(\x0c\x12\x0b\n\x03\x65of\x18\x05 \x01(\x08\"\x1c\n\x1aTaskExecStdinWriteResponse\"\x87\x01\n\x1fTaskExecStdinWriteStreamRequest\x12I\n\x05start\x18\x01 \x01(\x0b\x32\x38.modal.task_command_router.TaskExecStdinWriteStreamStartH\x00\x12\x0e\n\x04\x64\x61ta\x18\x02 \x01(\x0cH\x00\x42\t\n\x07payload\"\"\n TaskExecStdinWriteStreamResponse\"Q\n\x1dTaskExecStdinWriteStreamStart\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\x12\x0e\n\x06offset\x18\x03 \x01(\x04\"\x9d\x01\n\x18TaskExecStdioReadRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\x12\x0e\n\x06offset\x18\x03 \x01(\x04\x12O\n\x0f\x66ile_descriptor\x18\x04 \x01(\x0e\x32\x36.modal.task_command_router.TaskExecStdioFileDescriptor\")\n\x19TaskExecStdioReadResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"7\n\x13TaskExecWaitRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\"G\n\x14TaskExecWaitResponse\x12\x0e\n\x04\x63ode\x18\x01 \x01(\x05H\x00\x12\x10\n\x06signal\x18\x02 \x01(\x05H\x00\x42\r\n\x0b\x65xit_status\"L\n\x19TaskMountDirectoryRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\x0c\x12\x10\n\x08image_id\x18\x03 \x01(\t\"|\n\x1cTaskSnapshotDirectoryRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\x0c\x12\x13\n\x0bsnapshot_id\x18\x03 \x01(\t\x12\x18\n\x0bttl_seconds\x18\x04 \x01(\x03H\x00\x88\x01\x01\x42\x0e\n\x0c_ttl_seconds\"1\n\x1dTaskSnapshotDirectoryResponse\x12\x10\n\x08image_id\x18\x01 \x01(\t\"o\n\x1dTaskSnapshotFilesystemRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x13\n\x0bsnapshot_id\x18\x02 \x01(\t\x12\x18\n\x0bttl_seconds\x18\x03 \x01(\x03H\x00\x88\x01\x01\x42\x0e\n\x0c_ttl_seconds\"2\n\x1eTaskSnapshotFilesystemResponse\x12\x10\n\x08image_id\x18\x01 \x01(\t\"<\n\x1bTaskUnmountDirectoryRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\x0c*p\n\x1aSandboxStdioFileDescriptor\x12(\n$SANDBOX_STDIO_FILE_DESCRIPTOR_STDOUT\x10\x00\x12(\n$SANDBOX_STDIO_FILE_DESCRIPTOR_STDERR\x10\x01*\x81\x01\n\x14TaskExecStderrConfig\x12#\n\x1fTASK_EXEC_STDERR_CONFIG_DEVNULL\x10\x00\x12 \n\x1cTASK_EXEC_STDERR_CONFIG_PIPE\x10\x01\x12\"\n\x1eTASK_EXEC_STDERR_CONFIG_STDOUT\x10\x02*u\n\x1bTaskExecStdioFileDescriptor\x12*\n&TASK_EXEC_STDIO_FILE_DESCRIPTOR_STDOUT\x10\x00\x12*\n&TASK_EXEC_STDIO_FILE_DESCRIPTOR_STDERR\x10\x01*]\n\x14TaskExecStdoutConfig\x12#\n\x1fTASK_EXEC_STDOUT_CONFIG_DEVNULL\x10\x00\x12 \n\x1cTASK_EXEC_STDOUT_CONFIG_PIPE\x10\x01\x32\x99\x12\n\x11TaskCommandRouter\x12\x84\x01\n\x13SandboxStdinWriteV2\x12\x35.modal.task_command_router.SandboxStdinWriteV2Request\x1a\x36.modal.task_command_router.SandboxStdinWriteV2Response\x12\x83\x01\n\x12SandboxStdioReadV2\x12\x34.modal.task_command_router.SandboxStdioReadV2Request\x1a\x35.modal.task_command_router.SandboxStdioReadV2Response0\x01\x12\x84\x01\n\x13TaskContainerCreate\x12\x35.modal.task_command_router.TaskContainerCreateRequest\x1a\x36.modal.task_command_router.TaskContainerCreateResponse\x12{\n\x10TaskContainerGet\x12\x32.modal.task_command_router.TaskContainerGetRequest\x1a\x33.modal.task_command_router.TaskContainerGetResponse\x12~\n\x11TaskContainerList\x12\x33.modal.task_command_router.TaskContainerListRequest\x1a\x34.modal.task_command_router.TaskContainerListResponse\x12\x8d\x01\n\x16TaskContainerTerminate\x12\x38.modal.task_command_router.TaskContainerTerminateRequest\x1a\x39.modal.task_command_router.TaskContainerTerminateResponse\x12~\n\x11TaskContainerWait\x12\x33.modal.task_command_router.TaskContainerWaitRequest\x1a\x34.modal.task_command_router.TaskContainerWaitResponse\x12o\n\x0cTaskExecPoll\x12..modal.task_command_router.TaskExecPollRequest\x1a/.modal.task_command_router.TaskExecPollResponse\x12r\n\rTaskExecStart\x12/.modal.task_command_router.TaskExecStartRequest\x1a\x30.modal.task_command_router.TaskExecStartResponse\x12\x84\x01\n\x13TaskExecStdinStatus\x12\x35.modal.task_command_router.TaskExecStdinStatusRequest\x1a\x36.modal.task_command_router.TaskExecStdinStatusResponse\x12\x81\x01\n\x12TaskExecStdinWrite\x12\x34.modal.task_command_router.TaskExecStdinWriteRequest\x1a\x35.modal.task_command_router.TaskExecStdinWriteResponse\x12\x95\x01\n\x18TaskExecStdinWriteStream\x12:.modal.task_command_router.TaskExecStdinWriteStreamRequest\x1a;.modal.task_command_router.TaskExecStdinWriteStreamResponse(\x01\x12\x80\x01\n\x11TaskExecStdioRead\x12\x33.modal.task_command_router.TaskExecStdioReadRequest\x1a\x34.modal.task_command_router.TaskExecStdioReadResponse0\x01\x12o\n\x0cTaskExecWait\x12..modal.task_command_router.TaskExecWaitRequest\x1a/.modal.task_command_router.TaskExecWaitResponse\x12\x62\n\x12TaskMountDirectory\x12\x34.modal.task_command_router.TaskMountDirectoryRequest\x1a\x16.google.protobuf.Empty\x12\x8a\x01\n\x15TaskSnapshotDirectory\x12\x37.modal.task_command_router.TaskSnapshotDirectoryRequest\x1a\x38.modal.task_command_router.TaskSnapshotDirectoryResponse\x12\x8d\x01\n\x16TaskSnapshotFilesystem\x12\x38.modal.task_command_router.TaskSnapshotFilesystemRequest\x1a\x39.modal.task_command_router.TaskSnapshotFilesystemResponse\x12\x66\n\x14TaskUnmountDirectory\x12\x36.modal.task_command_router.TaskUnmountDirectoryRequest\x1a\x16.google.protobuf.EmptyB&Z$github.com/modal-labs/modal/go/protob\x06proto3')
20
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n%modal_proto/task_command_router.proto\x12\x19modal.task_command_router\x1a\x1bgoogle/protobuf/empty.proto\x1a\x15modal_proto/api.proto\"X\n\x1aSandboxStdinWriteV2Request\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\x02 \x01(\x04\x12\x0c\n\x04\x64\x61ta\x18\x03 \x01(\x0c\x12\x0b\n\x03\x65of\x18\x04 \x01(\x08\"\x1d\n\x1bSandboxStdinWriteV2Response\"\x8c\x01\n\x19SandboxStdioReadV2Request\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0e\n\x06offset\x18\x02 \x01(\x04\x12N\n\x0f\x66ile_descriptor\x18\x03 \x01(\x0e\x32\x35.modal.task_command_router.SandboxStdioFileDescriptor\"C\n\x1aSandboxStdioReadV2Response\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\x17\n\x0fstarting_offset\x18\x02 \x01(\x04\"\x83\x02\n\x1aTaskContainerCreateRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x16\n\x0e\x63ontainer_name\x18\x02 \x01(\t\x12\x10\n\x08image_id\x18\x03 \x01(\t\x12\x0c\n\x04\x61rgs\x18\x05 \x03(\t\x12K\n\x03\x65nv\x18\x06 \x03(\x0b\x32>.modal.task_command_router.TaskContainerCreateRequest.EnvEntry\x12\x0f\n\x07workdir\x18\x07 \x01(\t\x12\x12\n\nsecret_ids\x18\x08 \x03(\t\x1a*\n\x08\x45nvEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"K\n\x1bTaskContainerCreateResponse\x12\x14\n\x0c\x63ontainer_id\x18\x01 \x01(\t\x12\x16\n\x0e\x63ontainer_name\x18\x02 \x01(\t\"^\n\x17TaskContainerGetRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x16\n\x0e\x63ontainer_name\x18\x02 \x01(\t\x12\x1a\n\x12include_terminated\x18\x03 \x01(\x08\"[\n\x18TaskContainerGetResponse\x12?\n\tcontainer\x18\x01 \x01(\x0b\x32,.modal.task_command_router.TaskContainerInfo\"~\n\x11TaskContainerInfo\x12\x14\n\x0c\x63ontainer_id\x18\x01 \x01(\t\x12\x16\n\x0e\x63ontainer_name\x18\x02 \x01(\t\x12\x0e\n\x06status\x18\x03 \x01(\t\x12+\n\x06result\x18\x04 \x01(\x0b\x32\x1b.modal.client.GenericResult\"G\n\x18TaskContainerListRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x1a\n\x12include_terminated\x18\x02 \x01(\x08\"]\n\x19TaskContainerListResponse\x12@\n\ncontainers\x18\x01 \x03(\x0b\x32,.modal.task_command_router.TaskContainerInfo\"F\n\x1dTaskContainerTerminateRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x14\n\x0c\x63ontainer_id\x18\x02 \x01(\t\" \n\x1eTaskContainerTerminateResponse\"R\n\x18TaskContainerWaitRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x14\n\x0c\x63ontainer_id\x18\x02 \x01(\t\x12\x0f\n\x07timeout\x18\x03 \x01(\x02\"H\n\x19TaskContainerWaitResponse\x12+\n\x06result\x18\x01 \x01(\x0b\x32\x1b.modal.client.GenericResult\"7\n\x13TaskExecPollRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\"G\n\x14TaskExecPollResponse\x12\x0e\n\x04\x63ode\x18\x01 \x01(\x05H\x00\x12\x10\n\x06signal\x18\x02 \x01(\x05H\x00\x42\r\n\x0b\x65xit_status\"\x9b\x04\n\x14TaskExecStartRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\x12\x14\n\x0c\x63ommand_args\x18\x03 \x03(\t\x12\x46\n\rstdout_config\x18\x04 \x01(\x0e\x32/.modal.task_command_router.TaskExecStdoutConfig\x12\x46\n\rstderr_config\x18\x05 \x01(\x0e\x32/.modal.task_command_router.TaskExecStderrConfig\x12\x19\n\x0ctimeout_secs\x18\x06 \x01(\rH\x00\x88\x01\x01\x12\x14\n\x07workdir\x18\x07 \x01(\tH\x01\x88\x01\x01\x12\x12\n\nsecret_ids\x18\x08 \x03(\t\x12,\n\x08pty_info\x18\t \x01(\x0b\x32\x15.modal.client.PTYInfoH\x02\x88\x01\x01\x12\x15\n\rruntime_debug\x18\n \x01(\x08\x12\x14\n\x0c\x63ontainer_id\x18\x0b \x01(\t\x12\x45\n\x03\x65nv\x18\x0c \x03(\x0b\x32\x38.modal.task_command_router.TaskExecStartRequest.EnvEntry\x1a*\n\x08\x45nvEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x42\x0f\n\r_timeout_secsB\n\n\x08_workdirB\x0b\n\t_pty_info\"\x17\n\x15TaskExecStartResponse\">\n\x1aTaskExecStdinStatusRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\"H\n\x1bTaskExecStdinStatusResponse\x12\x19\n\x11num_bytes_written\x18\x01 \x01(\x04\x12\x0e\n\x06\x63losed\x18\x02 \x01(\x08\"h\n\x19TaskExecStdinWriteRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\x12\x0e\n\x06offset\x18\x03 \x01(\x04\x12\x0c\n\x04\x64\x61ta\x18\x04 \x01(\x0c\x12\x0b\n\x03\x65of\x18\x05 \x01(\x08\"\x1c\n\x1aTaskExecStdinWriteResponse\"\x87\x01\n\x1fTaskExecStdinWriteStreamRequest\x12I\n\x05start\x18\x01 \x01(\x0b\x32\x38.modal.task_command_router.TaskExecStdinWriteStreamStartH\x00\x12\x0e\n\x04\x64\x61ta\x18\x02 \x01(\x0cH\x00\x42\t\n\x07payload\"\"\n TaskExecStdinWriteStreamResponse\"Q\n\x1dTaskExecStdinWriteStreamStart\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\x12\x0e\n\x06offset\x18\x03 \x01(\x04\"\x9d\x01\n\x18TaskExecStdioReadRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\x12\x0e\n\x06offset\x18\x03 \x01(\x04\x12O\n\x0f\x66ile_descriptor\x18\x04 \x01(\x0e\x32\x36.modal.task_command_router.TaskExecStdioFileDescriptor\")\n\x19TaskExecStdioReadResponse\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\"7\n\x13TaskExecWaitRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0f\n\x07\x65xec_id\x18\x02 \x01(\t\"G\n\x14TaskExecWaitResponse\x12\x0e\n\x04\x63ode\x18\x01 \x01(\x05H\x00\x12\x10\n\x06signal\x18\x02 \x01(\x05H\x00\x42\r\n\x0b\x65xit_status\"\xa0\x01\n\x19TaskMountDirectoryRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\x0c\x12\x10\n\x08image_id\x18\x03 \x01(\t\x12-\n customer_supplied_encryption_key\x18\x04 \x01(\x0cH\x00\x88\x01\x01\x42#\n!_customer_supplied_encryption_key\"\xd0\x01\n\x1cTaskSnapshotDirectoryRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\x0c\x12\x13\n\x0bsnapshot_id\x18\x03 \x01(\t\x12\x18\n\x0bttl_seconds\x18\x04 \x01(\x03H\x00\x88\x01\x01\x12-\n customer_supplied_encryption_key\x18\x05 \x01(\x0cH\x01\x88\x01\x01\x42\x0e\n\x0c_ttl_secondsB#\n!_customer_supplied_encryption_key\"1\n\x1dTaskSnapshotDirectoryResponse\x12\x10\n\x08image_id\x18\x01 \x01(\t\"o\n\x1dTaskSnapshotFilesystemRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x13\n\x0bsnapshot_id\x18\x02 \x01(\t\x12\x18\n\x0bttl_seconds\x18\x03 \x01(\x03H\x00\x88\x01\x01\x42\x0e\n\x0c_ttl_seconds\"2\n\x1eTaskSnapshotFilesystemResponse\x12\x10\n\x08image_id\x18\x01 \x01(\t\"<\n\x1bTaskUnmountDirectoryRequest\x12\x0f\n\x07task_id\x18\x01 \x01(\t\x12\x0c\n\x04path\x18\x02 \x01(\x0c*p\n\x1aSandboxStdioFileDescriptor\x12(\n$SANDBOX_STDIO_FILE_DESCRIPTOR_STDOUT\x10\x00\x12(\n$SANDBOX_STDIO_FILE_DESCRIPTOR_STDERR\x10\x01*\x81\x01\n\x14TaskExecStderrConfig\x12#\n\x1fTASK_EXEC_STDERR_CONFIG_DEVNULL\x10\x00\x12 \n\x1cTASK_EXEC_STDERR_CONFIG_PIPE\x10\x01\x12\"\n\x1eTASK_EXEC_STDERR_CONFIG_STDOUT\x10\x02*u\n\x1bTaskExecStdioFileDescriptor\x12*\n&TASK_EXEC_STDIO_FILE_DESCRIPTOR_STDOUT\x10\x00\x12*\n&TASK_EXEC_STDIO_FILE_DESCRIPTOR_STDERR\x10\x01*]\n\x14TaskExecStdoutConfig\x12#\n\x1fTASK_EXEC_STDOUT_CONFIG_DEVNULL\x10\x00\x12 \n\x1cTASK_EXEC_STDOUT_CONFIG_PIPE\x10\x01\x32\x99\x12\n\x11TaskCommandRouter\x12\x84\x01\n\x13SandboxStdinWriteV2\x12\x35.modal.task_command_router.SandboxStdinWriteV2Request\x1a\x36.modal.task_command_router.SandboxStdinWriteV2Response\x12\x83\x01\n\x12SandboxStdioReadV2\x12\x34.modal.task_command_router.SandboxStdioReadV2Request\x1a\x35.modal.task_command_router.SandboxStdioReadV2Response0\x01\x12\x84\x01\n\x13TaskContainerCreate\x12\x35.modal.task_command_router.TaskContainerCreateRequest\x1a\x36.modal.task_command_router.TaskContainerCreateResponse\x12{\n\x10TaskContainerGet\x12\x32.modal.task_command_router.TaskContainerGetRequest\x1a\x33.modal.task_command_router.TaskContainerGetResponse\x12~\n\x11TaskContainerList\x12\x33.modal.task_command_router.TaskContainerListRequest\x1a\x34.modal.task_command_router.TaskContainerListResponse\x12\x8d\x01\n\x16TaskContainerTerminate\x12\x38.modal.task_command_router.TaskContainerTerminateRequest\x1a\x39.modal.task_command_router.TaskContainerTerminateResponse\x12~\n\x11TaskContainerWait\x12\x33.modal.task_command_router.TaskContainerWaitRequest\x1a\x34.modal.task_command_router.TaskContainerWaitResponse\x12o\n\x0cTaskExecPoll\x12..modal.task_command_router.TaskExecPollRequest\x1a/.modal.task_command_router.TaskExecPollResponse\x12r\n\rTaskExecStart\x12/.modal.task_command_router.TaskExecStartRequest\x1a\x30.modal.task_command_router.TaskExecStartResponse\x12\x84\x01\n\x13TaskExecStdinStatus\x12\x35.modal.task_command_router.TaskExecStdinStatusRequest\x1a\x36.modal.task_command_router.TaskExecStdinStatusResponse\x12\x81\x01\n\x12TaskExecStdinWrite\x12\x34.modal.task_command_router.TaskExecStdinWriteRequest\x1a\x35.modal.task_command_router.TaskExecStdinWriteResponse\x12\x95\x01\n\x18TaskExecStdinWriteStream\x12:.modal.task_command_router.TaskExecStdinWriteStreamRequest\x1a;.modal.task_command_router.TaskExecStdinWriteStreamResponse(\x01\x12\x80\x01\n\x11TaskExecStdioRead\x12\x33.modal.task_command_router.TaskExecStdioReadRequest\x1a\x34.modal.task_command_router.TaskExecStdioReadResponse0\x01\x12o\n\x0cTaskExecWait\x12..modal.task_command_router.TaskExecWaitRequest\x1a/.modal.task_command_router.TaskExecWaitResponse\x12\x62\n\x12TaskMountDirectory\x12\x34.modal.task_command_router.TaskMountDirectoryRequest\x1a\x16.google.protobuf.Empty\x12\x8a\x01\n\x15TaskSnapshotDirectory\x12\x37.modal.task_command_router.TaskSnapshotDirectoryRequest\x1a\x38.modal.task_command_router.TaskSnapshotDirectoryResponse\x12\x8d\x01\n\x16TaskSnapshotFilesystem\x12\x38.modal.task_command_router.TaskSnapshotFilesystemRequest\x1a\x39.modal.task_command_router.TaskSnapshotFilesystemResponse\x12\x66\n\x14TaskUnmountDirectory\x12\x36.modal.task_command_router.TaskUnmountDirectoryRequest\x1a\x16.google.protobuf.EmptyB&Z$github.com/modal-labs/modal/go/protob\x06proto3')
21
21
 
22
22
  _SANDBOXSTDIOFILEDESCRIPTOR = DESCRIPTOR.enum_types_by_name['SandboxStdioFileDescriptor']
23
23
  SandboxStdioFileDescriptor = enum_type_wrapper.EnumTypeWrapper(_SANDBOXSTDIOFILEDESCRIPTOR)
@@ -353,14 +353,14 @@ if _descriptor._USE_C_DESCRIPTORS == False:
353
353
  _TASKCONTAINERCREATEREQUEST_ENVENTRY._serialized_options = b'8\001'
354
354
  _TASKEXECSTARTREQUEST_ENVENTRY._options = None
355
355
  _TASKEXECSTARTREQUEST_ENVENTRY._serialized_options = b'8\001'
356
- _SANDBOXSTDIOFILEDESCRIPTOR._serialized_start=3584
357
- _SANDBOXSTDIOFILEDESCRIPTOR._serialized_end=3696
358
- _TASKEXECSTDERRCONFIG._serialized_start=3699
359
- _TASKEXECSTDERRCONFIG._serialized_end=3828
360
- _TASKEXECSTDIOFILEDESCRIPTOR._serialized_start=3830
361
- _TASKEXECSTDIOFILEDESCRIPTOR._serialized_end=3947
362
- _TASKEXECSTDOUTCONFIG._serialized_start=3949
363
- _TASKEXECSTDOUTCONFIG._serialized_end=4042
356
+ _SANDBOXSTDIOFILEDESCRIPTOR._serialized_start=3754
357
+ _SANDBOXSTDIOFILEDESCRIPTOR._serialized_end=3866
358
+ _TASKEXECSTDERRCONFIG._serialized_start=3869
359
+ _TASKEXECSTDERRCONFIG._serialized_end=3998
360
+ _TASKEXECSTDIOFILEDESCRIPTOR._serialized_start=4000
361
+ _TASKEXECSTDIOFILEDESCRIPTOR._serialized_end=4117
362
+ _TASKEXECSTDOUTCONFIG._serialized_start=4119
363
+ _TASKEXECSTDOUTCONFIG._serialized_end=4212
364
364
  _SANDBOXSTDINWRITEV2REQUEST._serialized_start=120
365
365
  _SANDBOXSTDINWRITEV2REQUEST._serialized_end=208
366
366
  _SANDBOXSTDINWRITEV2RESPONSE._serialized_start=210
@@ -425,18 +425,18 @@ if _descriptor._USE_C_DESCRIPTORS == False:
425
425
  _TASKEXECWAITREQUEST._serialized_end=3027
426
426
  _TASKEXECWAITRESPONSE._serialized_start=3029
427
427
  _TASKEXECWAITRESPONSE._serialized_end=3100
428
- _TASKMOUNTDIRECTORYREQUEST._serialized_start=3102
429
- _TASKMOUNTDIRECTORYREQUEST._serialized_end=3178
430
- _TASKSNAPSHOTDIRECTORYREQUEST._serialized_start=3180
431
- _TASKSNAPSHOTDIRECTORYREQUEST._serialized_end=3304
432
- _TASKSNAPSHOTDIRECTORYRESPONSE._serialized_start=3306
433
- _TASKSNAPSHOTDIRECTORYRESPONSE._serialized_end=3355
434
- _TASKSNAPSHOTFILESYSTEMREQUEST._serialized_start=3357
435
- _TASKSNAPSHOTFILESYSTEMREQUEST._serialized_end=3468
436
- _TASKSNAPSHOTFILESYSTEMRESPONSE._serialized_start=3470
437
- _TASKSNAPSHOTFILESYSTEMRESPONSE._serialized_end=3520
438
- _TASKUNMOUNTDIRECTORYREQUEST._serialized_start=3522
439
- _TASKUNMOUNTDIRECTORYREQUEST._serialized_end=3582
440
- _TASKCOMMANDROUTER._serialized_start=4045
441
- _TASKCOMMANDROUTER._serialized_end=6374
428
+ _TASKMOUNTDIRECTORYREQUEST._serialized_start=3103
429
+ _TASKMOUNTDIRECTORYREQUEST._serialized_end=3263
430
+ _TASKSNAPSHOTDIRECTORYREQUEST._serialized_start=3266
431
+ _TASKSNAPSHOTDIRECTORYREQUEST._serialized_end=3474
432
+ _TASKSNAPSHOTDIRECTORYRESPONSE._serialized_start=3476
433
+ _TASKSNAPSHOTDIRECTORYRESPONSE._serialized_end=3525
434
+ _TASKSNAPSHOTFILESYSTEMREQUEST._serialized_start=3527
435
+ _TASKSNAPSHOTFILESYSTEMREQUEST._serialized_end=3638
436
+ _TASKSNAPSHOTFILESYSTEMRESPONSE._serialized_start=3640
437
+ _TASKSNAPSHOTFILESYSTEMRESPONSE._serialized_end=3690
438
+ _TASKUNMOUNTDIRECTORYREQUEST._serialized_start=3692
439
+ _TASKUNMOUNTDIRECTORYREQUEST._serialized_end=3752
440
+ _TASKCOMMANDROUTER._serialized_start=4215
441
+ _TASKCOMMANDROUTER._serialized_end=6544
442
442
  # @@protoc_insertion_point(module_scope)
@@ -769,17 +769,25 @@ class TaskMountDirectoryRequest(google.protobuf.message.Message):
769
769
  TASK_ID_FIELD_NUMBER: builtins.int
770
770
  PATH_FIELD_NUMBER: builtins.int
771
771
  IMAGE_ID_FIELD_NUMBER: builtins.int
772
+ CUSTOMER_SUPPLIED_ENCRYPTION_KEY_FIELD_NUMBER: builtins.int
772
773
  task_id: builtins.str
773
774
  path: builtins.bytes
774
775
  image_id: builtins.str
776
+ customer_supplied_encryption_key: builtins.bytes
777
+ """Customer-supplied encryption key used to decrypt CSEK-encrypted image metadata keys.
778
+ This key is not persisted by Modal.
779
+ """
775
780
  def __init__(
776
781
  self,
777
782
  *,
778
783
  task_id: builtins.str = ...,
779
784
  path: builtins.bytes = ...,
780
785
  image_id: builtins.str = ...,
786
+ customer_supplied_encryption_key: builtins.bytes | None = ...,
781
787
  ) -> None: ...
782
- def ClearField(self, field_name: typing_extensions.Literal["image_id", b"image_id", "path", b"path", "task_id", b"task_id"]) -> None: ...
788
+ def HasField(self, field_name: typing_extensions.Literal["_customer_supplied_encryption_key", b"_customer_supplied_encryption_key", "customer_supplied_encryption_key", b"customer_supplied_encryption_key"]) -> builtins.bool: ...
789
+ def ClearField(self, field_name: typing_extensions.Literal["_customer_supplied_encryption_key", b"_customer_supplied_encryption_key", "customer_supplied_encryption_key", b"customer_supplied_encryption_key", "image_id", b"image_id", "path", b"path", "task_id", b"task_id"]) -> None: ...
790
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_customer_supplied_encryption_key", b"_customer_supplied_encryption_key"]) -> typing_extensions.Literal["customer_supplied_encryption_key"] | None: ...
783
791
 
784
792
  global___TaskMountDirectoryRequest = TaskMountDirectoryRequest
785
793
 
@@ -790,6 +798,7 @@ class TaskSnapshotDirectoryRequest(google.protobuf.message.Message):
790
798
  PATH_FIELD_NUMBER: builtins.int
791
799
  SNAPSHOT_ID_FIELD_NUMBER: builtins.int
792
800
  TTL_SECONDS_FIELD_NUMBER: builtins.int
801
+ CUSTOMER_SUPPLIED_ENCRYPTION_KEY_FIELD_NUMBER: builtins.int
793
802
  task_id: builtins.str
794
803
  path: builtins.bytes
795
804
  snapshot_id: builtins.str
@@ -807,6 +816,10 @@ class TaskSnapshotDirectoryRequest(google.protobuf.message.Message):
807
816
  0 and other negative values are invalid and rejected by the
808
817
  server.
809
818
  """
819
+ customer_supplied_encryption_key: builtins.bytes
820
+ """Customer-supplied encryption key used to encrypt the resulting image's data and tree
821
+ metadata keys. This key is not persisted by Modal.
822
+ """
810
823
  def __init__(
811
824
  self,
812
825
  *,
@@ -814,9 +827,13 @@ class TaskSnapshotDirectoryRequest(google.protobuf.message.Message):
814
827
  path: builtins.bytes = ...,
815
828
  snapshot_id: builtins.str = ...,
816
829
  ttl_seconds: builtins.int | None = ...,
830
+ customer_supplied_encryption_key: builtins.bytes | None = ...,
817
831
  ) -> None: ...
818
- def HasField(self, field_name: typing_extensions.Literal["_ttl_seconds", b"_ttl_seconds", "ttl_seconds", b"ttl_seconds"]) -> builtins.bool: ...
819
- def ClearField(self, field_name: typing_extensions.Literal["_ttl_seconds", b"_ttl_seconds", "path", b"path", "snapshot_id", b"snapshot_id", "task_id", b"task_id", "ttl_seconds", b"ttl_seconds"]) -> None: ...
832
+ def HasField(self, field_name: typing_extensions.Literal["_customer_supplied_encryption_key", b"_customer_supplied_encryption_key", "_ttl_seconds", b"_ttl_seconds", "customer_supplied_encryption_key", b"customer_supplied_encryption_key", "ttl_seconds", b"ttl_seconds"]) -> builtins.bool: ...
833
+ def ClearField(self, field_name: typing_extensions.Literal["_customer_supplied_encryption_key", b"_customer_supplied_encryption_key", "_ttl_seconds", b"_ttl_seconds", "customer_supplied_encryption_key", b"customer_supplied_encryption_key", "path", b"path", "snapshot_id", b"snapshot_id", "task_id", b"task_id", "ttl_seconds", b"ttl_seconds"]) -> None: ...
834
+ @typing.overload
835
+ def WhichOneof(self, oneof_group: typing_extensions.Literal["_customer_supplied_encryption_key", b"_customer_supplied_encryption_key"]) -> typing_extensions.Literal["customer_supplied_encryption_key"] | None: ...
836
+ @typing.overload
820
837
  def WhichOneof(self, oneof_group: typing_extensions.Literal["_ttl_seconds", b"_ttl_seconds"]) -> typing_extensions.Literal["ttl_seconds"] | None: ...
821
838
 
822
839
  global___TaskSnapshotDirectoryRequest = TaskSnapshotDirectoryRequest
@@ -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.4.4.dev11"
4
+ __version__ = "1.4.4.dev12"
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