modal 1.4.3.dev16__tar.gz → 1.4.3.dev18__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 (213) hide show
  1. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/PKG-INFO +1 -1
  2. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/blob_utils.py +10 -3
  3. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/client.pyi +2 -2
  4. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/file_io.py +0 -7
  5. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/sandbox.py +0 -3
  6. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal.egg-info/PKG-INFO +1 -1
  7. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_version/__init__.py +1 -1
  8. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/LICENSE +0 -0
  9. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/README.md +0 -0
  10. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/__init__.py +0 -0
  11. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/__main__.py +0 -0
  12. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_billing.py +0 -0
  13. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_clustered_functions.py +0 -0
  14. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_clustered_functions.pyi +0 -0
  15. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_container_entrypoint.py +0 -0
  16. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_environments.py +0 -0
  17. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_functions.py +0 -0
  18. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_grpc_client.py +0 -0
  19. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_ipython.py +0 -0
  20. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_load_context.py +0 -0
  21. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_location.py +0 -0
  22. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_logs.py +0 -0
  23. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_object.py +0 -0
  24. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_output/__init__.py +0 -0
  25. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_output/manager.py +0 -0
  26. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_output/pty.py +0 -0
  27. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_output/rich.py +0 -0
  28. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_output/status.py +0 -0
  29. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_partial_function.py +0 -0
  30. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_resolver.py +0 -0
  31. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_resources.py +0 -0
  32. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_runtime/__init__.py +0 -0
  33. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_runtime/asgi.py +0 -0
  34. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_runtime/container_io_manager.py +0 -0
  35. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_runtime/container_io_manager.pyi +0 -0
  36. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_runtime/execution_context.py +0 -0
  37. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_runtime/execution_context.pyi +0 -0
  38. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_runtime/gpu_memory_snapshot.py +0 -0
  39. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_runtime/telemetry.py +0 -0
  40. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_runtime/user_code_event_loop.py +0 -0
  41. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_runtime/user_code_imports.py +0 -0
  42. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_serialization.py +0 -0
  43. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_server.py +0 -0
  44. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_traceback.py +0 -0
  45. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_tunnel.py +0 -0
  46. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_tunnel.pyi +0 -0
  47. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_type_manager.py +0 -0
  48. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/__init__.py +0 -0
  49. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/app_utils.py +0 -0
  50. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/async_utils.py +0 -0
  51. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/auth_token_manager.py +0 -0
  52. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/browser_utils.py +0 -0
  53. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/bytes_io_segment_payload.py +0 -0
  54. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/deprecation.py +0 -0
  55. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/docker_utils.py +0 -0
  56. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/function_utils.py +0 -0
  57. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/git_utils.py +0 -0
  58. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/grpc_testing.py +0 -0
  59. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/grpc_utils.py +0 -0
  60. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/hash_utils.py +0 -0
  61. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/http_utils.py +0 -0
  62. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/jwt_utils.py +0 -0
  63. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/logger.py +0 -0
  64. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/mount_utils.py +0 -0
  65. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/name_utils.py +0 -0
  66. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/package_utils.py +0 -0
  67. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/pattern_utils.py +0 -0
  68. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/rand_pb_testing.py +0 -0
  69. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/sandbox_fs_utils.py +0 -0
  70. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/shell_utils.py +0 -0
  71. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/task_command_router_client.py +0 -0
  72. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_utils/time_utils.py +0 -0
  73. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_vendor/__init__.py +0 -0
  74. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_vendor/a2wsgi_wsgi.py +0 -0
  75. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_vendor/cloudpickle.py +0 -0
  76. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_vendor/tblib.py +0 -0
  77. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_vendor/version.py +0 -0
  78. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/_watcher.py +0 -0
  79. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/app.py +0 -0
  80. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/app.pyi +0 -0
  81. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/billing.py +0 -0
  82. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/builder/2023.12.312.txt +0 -0
  83. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/builder/2023.12.txt +0 -0
  84. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/builder/2024.04.txt +0 -0
  85. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/builder/2024.10.txt +0 -0
  86. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/builder/2025.06.txt +0 -0
  87. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/builder/PREVIEW.txt +0 -0
  88. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/builder/README.md +0 -0
  89. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/builder/base-images.json +0 -0
  90. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/call_graph.py +0 -0
  91. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/__init__.py +0 -0
  92. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/_download.py +0 -0
  93. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/_help.py +0 -0
  94. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/_traceback.py +0 -0
  95. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/app.py +0 -0
  96. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/billing.py +0 -0
  97. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/bootstrap.py +0 -0
  98. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/changelog.py +0 -0
  99. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/cluster.py +0 -0
  100. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/config.py +0 -0
  101. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/container.py +0 -0
  102. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/dashboard.py +0 -0
  103. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/dict.py +0 -0
  104. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/entry_point.py +0 -0
  105. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/environment.py +0 -0
  106. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/import_refs.py +0 -0
  107. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/launch.py +0 -0
  108. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/logo.py +0 -0
  109. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/network_file_system.py +0 -0
  110. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/profile.py +0 -0
  111. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/programs/__init__.py +0 -0
  112. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/programs/run_jupyter.py +0 -0
  113. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/programs/vscode.py +0 -0
  114. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/queues.py +0 -0
  115. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/run.py +0 -0
  116. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/secret.py +0 -0
  117. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/selector.py +0 -0
  118. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/shell.py +0 -0
  119. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/token.py +0 -0
  120. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/utils.py +0 -0
  121. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cli/volume.py +0 -0
  122. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/client.py +0 -0
  123. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cloud_bucket_mount.py +0 -0
  124. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cloud_bucket_mount.pyi +0 -0
  125. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cls.py +0 -0
  126. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/cls.pyi +0 -0
  127. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/config.py +0 -0
  128. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/container_process.py +0 -0
  129. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/container_process.pyi +0 -0
  130. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/dict.py +0 -0
  131. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/dict.pyi +0 -0
  132. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/environments.py +0 -0
  133. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/environments.pyi +0 -0
  134. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/exception.py +0 -0
  135. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/experimental/__init__.py +0 -0
  136. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/experimental/flash.py +0 -0
  137. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/experimental/flash.pyi +0 -0
  138. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/experimental/ipython.py +0 -0
  139. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/file_io.pyi +0 -0
  140. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/file_pattern_matcher.py +0 -0
  141. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/functions.py +0 -0
  142. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/functions.pyi +0 -0
  143. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/image.py +0 -0
  144. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/image.pyi +0 -0
  145. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/io_streams.py +0 -0
  146. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/io_streams.pyi +0 -0
  147. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/mount.py +0 -0
  148. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/mount.pyi +0 -0
  149. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/network_file_system.py +0 -0
  150. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/network_file_system.pyi +0 -0
  151. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/object.py +0 -0
  152. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/object.pyi +0 -0
  153. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/output.py +0 -0
  154. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/parallel_map.py +0 -0
  155. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/parallel_map.pyi +0 -0
  156. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/partial_function.py +0 -0
  157. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/partial_function.pyi +0 -0
  158. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/proxy.py +0 -0
  159. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/proxy.pyi +0 -0
  160. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/py.typed +0 -0
  161. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/queue.py +0 -0
  162. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/queue.pyi +0 -0
  163. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/retries.py +0 -0
  164. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/runner.py +0 -0
  165. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/runner.pyi +0 -0
  166. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/running_app.py +0 -0
  167. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/sandbox.pyi +0 -0
  168. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/sandbox_fs.py +0 -0
  169. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/sandbox_fs.pyi +0 -0
  170. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/schedule.py +0 -0
  171. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/scheduler_placement.py +0 -0
  172. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/secret.py +0 -0
  173. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/secret.pyi +0 -0
  174. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/server.py +0 -0
  175. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/server.pyi +0 -0
  176. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/serving.py +0 -0
  177. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/serving.pyi +0 -0
  178. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/snapshot.py +0 -0
  179. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/snapshot.pyi +0 -0
  180. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/stream_type.py +0 -0
  181. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/token_flow.py +0 -0
  182. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/token_flow.pyi +0 -0
  183. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/volume.py +0 -0
  184. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal/volume.pyi +0 -0
  185. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal.egg-info/SOURCES.txt +0 -0
  186. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal.egg-info/dependency_links.txt +0 -0
  187. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal.egg-info/entry_points.txt +0 -0
  188. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal.egg-info/requires.txt +0 -0
  189. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal.egg-info/top_level.txt +0 -0
  190. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_docs/__init__.py +0 -0
  191. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_docs/gen_cli_docs.py +0 -0
  192. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_docs/gen_cli_docs_main.py +0 -0
  193. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_docs/gen_reference_docs.py +0 -0
  194. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_docs/gen_reference_docs_main.py +0 -0
  195. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_docs/mdmd/__init__.py +0 -0
  196. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_docs/mdmd/mdmd.py +0 -0
  197. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_docs/mdmd/signatures.py +0 -0
  198. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/__init__.py +0 -0
  199. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/api_grpc.py +0 -0
  200. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/api_pb2.py +0 -0
  201. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/api_pb2.pyi +0 -0
  202. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/api_pb2_grpc.py +0 -0
  203. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/api_pb2_grpc.pyi +0 -0
  204. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/modal_api_grpc.py +0 -0
  205. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/py.typed +0 -0
  206. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/task_command_router_grpc.py +0 -0
  207. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/task_command_router_pb2.py +0 -0
  208. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/task_command_router_pb2.pyi +0 -0
  209. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/task_command_router_pb2_grpc.py +0 -0
  210. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_proto/task_command_router_pb2_grpc.pyi +0 -0
  211. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/modal_version/__main__.py +0 -0
  212. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/pyproject.toml +0 -0
  213. {modal-1.4.3.dev16 → modal-1.4.3.dev18}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.4.3.dev16
3
+ Version: 1.4.3.dev18
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License-Expression: Apache-2.0
@@ -717,7 +717,14 @@ def use_md5(url: str) -> bool:
717
717
  host = urlparse(url).netloc.split(":")[0]
718
718
  if host.endswith(".amazonaws.com") or host.endswith(".r2.cloudflarestorage.com"):
719
719
  return True
720
- elif host in ["127.0.0.1", "localhost", "172.20.0.1", "172.21.0.1"]:
720
+ if host == "localhost":
721
721
  return False
722
- else:
723
- raise Exception(f"Unknown S3 host: {host}")
722
+ try:
723
+ import ipaddress
724
+
725
+ addr = ipaddress.ip_address(host)
726
+ if addr.is_private or addr.is_loopback:
727
+ return False
728
+ except ValueError:
729
+ pass
730
+ raise Exception(f"Unknown S3 host: {host}")
@@ -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.3.dev16",
38
+ version: str = "1.4.3.dev18",
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.3.dev16",
178
+ version: str = "1.4.3.dev18",
179
179
  ):
180
180
  """mdmd:hidden
181
181
  The Modal client object is not intended to be instantiated directly by users.
@@ -248,7 +248,6 @@ class _FileIO(Generic[T]):
248
248
  "`FileIO.read()` is deprecated."
249
249
  " Use `Sandbox.filesystem.read_text()`, `Sandbox.filesystem.read_bytes()`,"
250
250
  " or `Sandbox.filesystem.copy_to_local()` instead.",
251
- pending=True,
252
251
  )
253
252
  self._check_closed()
254
253
  self._check_readable()
@@ -266,7 +265,6 @@ class _FileIO(Generic[T]):
266
265
  "`FileIO.readline()` is deprecated."
267
266
  " Use `Sandbox.filesystem.read_text()`, `Sandbox.filesystem.read_bytes()`,"
268
267
  " or `Sandbox.filesystem.copy_to_local()` instead.",
269
- pending=True,
270
268
  )
271
269
  self._check_closed()
272
270
  self._check_readable()
@@ -288,7 +286,6 @@ class _FileIO(Generic[T]):
288
286
  "`FileIO.readlines()` is deprecated."
289
287
  " Use `Sandbox.filesystem.read_text()`, `Sandbox.filesystem.read_bytes()`,"
290
288
  " or `Sandbox.filesystem.copy_to_local()` instead.",
291
- pending=True,
292
289
  )
293
290
  self._check_closed()
294
291
  self._check_readable()
@@ -314,7 +311,6 @@ class _FileIO(Generic[T]):
314
311
  "`FileIO.write()` is deprecated."
315
312
  " Use `Sandbox.filesystem.write_text()`, `Sandbox.filesystem.write_bytes()`,"
316
313
  " or `Sandbox.filesystem.copy_from_local()` instead.",
317
- pending=True,
318
314
  )
319
315
  self._check_closed()
320
316
  self._check_writable()
@@ -343,7 +339,6 @@ class _FileIO(Generic[T]):
343
339
  "`FileIO.flush()` is deprecated."
344
340
  " Use `Sandbox.filesystem.write_text()`, `Sandbox.filesystem.write_bytes()`,"
345
341
  " or `Sandbox.filesystem.copy_from_local()` instead.",
346
- pending=True,
347
342
  )
348
343
  self._check_closed()
349
344
  self._check_writable()
@@ -407,7 +402,6 @@ class _FileIO(Generic[T]):
407
402
  deprecation_warning(
408
403
  (2026, 3, 9),
409
404
  "`FileIO.mkdir()` is deprecated. Use `Sandbox.filesystem.make_directory()` instead.",
410
- pending=True,
411
405
  )
412
406
  await mkdir(path, client, task_id, parents)
413
407
 
@@ -417,7 +411,6 @@ class _FileIO(Generic[T]):
417
411
  deprecation_warning(
418
412
  (2026, 3, 9),
419
413
  "`FileIO.rm()` is deprecated. Use `Sandbox.filesystem.remove()` instead.",
420
- pending=True,
421
414
  )
422
415
  await rm(path, client, task_id, recursive)
423
416
 
@@ -1635,7 +1635,6 @@ class _Sandbox(_Object, type_prefix="sb"):
1635
1635
  deprecation_warning(
1636
1636
  (2026, 3, 9),
1637
1637
  "`Sandbox.open()` is deprecated. Use the `Sandbox.filesystem` APIs instead.",
1638
- pending=True,
1639
1638
  )
1640
1639
  task_id = await self._get_task_id()
1641
1640
  return await _FileIO.create(path, mode, self._client, task_id)
@@ -1664,7 +1663,6 @@ class _Sandbox(_Object, type_prefix="sb"):
1664
1663
  deprecation_warning(
1665
1664
  (2026, 4, 15),
1666
1665
  "`Sandbox.mkdir()` is deprecated. Use `Sandbox.filesystem.make_directory()` instead.",
1667
- pending=True,
1668
1666
  )
1669
1667
  task_id = await self._get_task_id()
1670
1668
  return await mkdir(path, self._client, task_id, parents)
@@ -1679,7 +1677,6 @@ class _Sandbox(_Object, type_prefix="sb"):
1679
1677
  deprecation_warning(
1680
1678
  (2026, 4, 15),
1681
1679
  "`Sandbox.rm()` is deprecated. Use `Sandbox.filesystem.remove()` instead.",
1682
- pending=True,
1683
1680
  )
1684
1681
  task_id = await self._get_task_id()
1685
1682
  return await rm(path, self._client, task_id, recursive)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.4.3.dev16
3
+ Version: 1.4.3.dev18
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License-Expression: Apache-2.0
@@ -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.3.dev16"
4
+ __version__ = "1.4.3.dev18"
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