modal 1.0.0.dev11__tar.gz → 1.0.0.dev13__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.

Potentially problematic release.


This version of modal might be problematic. Click here for more details.

Files changed (183) hide show
  1. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/PKG-INFO +1 -1
  2. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/client.pyi +2 -2
  3. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/mount.py +1 -62
  4. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/mount.pyi +0 -1
  5. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal.egg-info/PKG-INFO +1 -1
  6. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/api.proto +8 -0
  7. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/api_pb2.py +574 -574
  8. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/api_pb2.pyi +21 -3
  9. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_version/__init__.py +1 -1
  10. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/LICENSE +0 -0
  11. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/README.md +0 -0
  12. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/__init__.py +0 -0
  13. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/__main__.py +0 -0
  14. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_clustered_functions.py +0 -0
  15. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_clustered_functions.pyi +0 -0
  16. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_container_entrypoint.py +0 -0
  17. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_functions.py +0 -0
  18. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_ipython.py +0 -0
  19. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_location.py +0 -0
  20. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_object.py +0 -0
  21. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_output.py +0 -0
  22. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_partial_function.py +0 -0
  23. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_pty.py +0 -0
  24. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_resolver.py +0 -0
  25. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_resources.py +0 -0
  26. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_runtime/__init__.py +0 -0
  27. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_runtime/asgi.py +0 -0
  28. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_runtime/container_io_manager.py +0 -0
  29. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_runtime/container_io_manager.pyi +0 -0
  30. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_runtime/execution_context.py +0 -0
  31. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_runtime/execution_context.pyi +0 -0
  32. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_runtime/gpu_memory_snapshot.py +0 -0
  33. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_runtime/telemetry.py +0 -0
  34. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_runtime/user_code_imports.py +0 -0
  35. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_serialization.py +0 -0
  36. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_traceback.py +0 -0
  37. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_tunnel.py +0 -0
  38. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_tunnel.pyi +0 -0
  39. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_type_manager.py +0 -0
  40. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/__init__.py +0 -0
  41. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/app_utils.py +0 -0
  42. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/async_utils.py +0 -0
  43. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/blob_utils.py +0 -0
  44. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/bytes_io_segment_payload.py +0 -0
  45. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/deprecation.py +0 -0
  46. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/docker_utils.py +0 -0
  47. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/function_utils.py +0 -0
  48. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/git_utils.py +0 -0
  49. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/grpc_testing.py +0 -0
  50. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/grpc_utils.py +0 -0
  51. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/hash_utils.py +0 -0
  52. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/http_utils.py +0 -0
  53. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/jwt_utils.py +0 -0
  54. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/logger.py +0 -0
  55. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/mount_utils.py +0 -0
  56. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/name_utils.py +0 -0
  57. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/package_utils.py +0 -0
  58. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/pattern_utils.py +0 -0
  59. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/rand_pb_testing.py +0 -0
  60. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_utils/shell_utils.py +0 -0
  61. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_vendor/__init__.py +0 -0
  62. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_vendor/a2wsgi_wsgi.py +0 -0
  63. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_vendor/cloudpickle.py +0 -0
  64. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_vendor/tblib.py +0 -0
  65. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/_watcher.py +0 -0
  66. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/app.py +0 -0
  67. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/app.pyi +0 -0
  68. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/call_graph.py +0 -0
  69. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/__init__.py +0 -0
  70. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/_download.py +0 -0
  71. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/_traceback.py +0 -0
  72. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/app.py +0 -0
  73. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/cluster.py +0 -0
  74. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/config.py +0 -0
  75. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/container.py +0 -0
  76. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/dict.py +0 -0
  77. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/entry_point.py +0 -0
  78. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/environment.py +0 -0
  79. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/import_refs.py +0 -0
  80. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/launch.py +0 -0
  81. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/network_file_system.py +0 -0
  82. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/profile.py +0 -0
  83. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/programs/__init__.py +0 -0
  84. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/programs/run_jupyter.py +0 -0
  85. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/programs/vscode.py +0 -0
  86. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/queues.py +0 -0
  87. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/run.py +0 -0
  88. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/secret.py +0 -0
  89. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/token.py +0 -0
  90. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/utils.py +0 -0
  91. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cli/volume.py +0 -0
  92. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/client.py +0 -0
  93. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cloud_bucket_mount.py +0 -0
  94. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cloud_bucket_mount.pyi +0 -0
  95. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cls.py +0 -0
  96. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/cls.pyi +0 -0
  97. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/config.py +0 -0
  98. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/container_process.py +0 -0
  99. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/container_process.pyi +0 -0
  100. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/dict.py +0 -0
  101. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/dict.pyi +0 -0
  102. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/environments.py +0 -0
  103. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/environments.pyi +0 -0
  104. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/exception.py +0 -0
  105. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/experimental/__init__.py +0 -0
  106. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/experimental/ipython.py +0 -0
  107. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/file_io.py +0 -0
  108. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/file_io.pyi +0 -0
  109. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/file_pattern_matcher.py +0 -0
  110. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/functions.py +0 -0
  111. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/functions.pyi +0 -0
  112. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/gpu.py +0 -0
  113. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/image.py +0 -0
  114. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/image.pyi +0 -0
  115. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/io_streams.py +0 -0
  116. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/io_streams.pyi +0 -0
  117. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/network_file_system.py +0 -0
  118. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/network_file_system.pyi +0 -0
  119. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/object.py +0 -0
  120. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/object.pyi +0 -0
  121. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/output.py +0 -0
  122. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/parallel_map.py +0 -0
  123. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/parallel_map.pyi +0 -0
  124. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/partial_function.py +0 -0
  125. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/partial_function.pyi +0 -0
  126. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/proxy.py +0 -0
  127. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/proxy.pyi +0 -0
  128. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/py.typed +0 -0
  129. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/queue.py +0 -0
  130. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/queue.pyi +0 -0
  131. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/requirements/2023.12.312.txt +0 -0
  132. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/requirements/2023.12.txt +0 -0
  133. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/requirements/2024.04.txt +0 -0
  134. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/requirements/2024.10.txt +0 -0
  135. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/requirements/PREVIEW.txt +0 -0
  136. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/requirements/README.md +0 -0
  137. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/requirements/base-images.json +0 -0
  138. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/retries.py +0 -0
  139. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/runner.py +0 -0
  140. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/runner.pyi +0 -0
  141. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/running_app.py +0 -0
  142. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/sandbox.py +0 -0
  143. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/sandbox.pyi +0 -0
  144. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/schedule.py +0 -0
  145. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/scheduler_placement.py +0 -0
  146. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/secret.py +0 -0
  147. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/secret.pyi +0 -0
  148. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/serving.py +0 -0
  149. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/serving.pyi +0 -0
  150. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/snapshot.py +0 -0
  151. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/snapshot.pyi +0 -0
  152. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/stream_type.py +0 -0
  153. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/token_flow.py +0 -0
  154. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/token_flow.pyi +0 -0
  155. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/volume.py +0 -0
  156. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal/volume.pyi +0 -0
  157. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal.egg-info/SOURCES.txt +0 -0
  158. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal.egg-info/dependency_links.txt +0 -0
  159. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal.egg-info/entry_points.txt +0 -0
  160. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal.egg-info/requires.txt +0 -0
  161. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal.egg-info/top_level.txt +0 -0
  162. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_docs/__init__.py +0 -0
  163. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_docs/gen_cli_docs.py +0 -0
  164. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_docs/gen_reference_docs.py +0 -0
  165. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_docs/mdmd/__init__.py +0 -0
  166. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_docs/mdmd/mdmd.py +0 -0
  167. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_docs/mdmd/signatures.py +0 -0
  168. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/__init__.py +0 -0
  169. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/api_grpc.py +0 -0
  170. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/api_pb2_grpc.py +0 -0
  171. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/api_pb2_grpc.pyi +0 -0
  172. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/modal_api_grpc.py +0 -0
  173. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/modal_options_grpc.py +0 -0
  174. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/options.proto +0 -0
  175. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/options_grpc.py +0 -0
  176. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/options_pb2.py +0 -0
  177. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/options_pb2.pyi +0 -0
  178. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/options_pb2_grpc.py +0 -0
  179. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/options_pb2_grpc.pyi +0 -0
  180. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_proto/py.typed +0 -0
  181. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/modal_version/__main__.py +0 -0
  182. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/pyproject.toml +0 -0
  183. {modal-1.0.0.dev11 → modal-1.0.0.dev13}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.0.0.dev11
3
+ Version: 1.0.0.dev13
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License: Apache-2.0
@@ -31,7 +31,7 @@ class _Client:
31
31
  server_url: str,
32
32
  client_type: int,
33
33
  credentials: typing.Optional[tuple[str, str]],
34
- version: str = "1.0.0.dev11",
34
+ version: str = "1.0.0.dev13",
35
35
  ): ...
36
36
  def is_closed(self) -> bool: ...
37
37
  @property
@@ -94,7 +94,7 @@ class Client:
94
94
  server_url: str,
95
95
  client_type: int,
96
96
  credentials: typing.Optional[tuple[str, str]],
97
- version: str = "1.0.0.dev11",
97
+ version: str = "1.0.0.dev13",
98
98
  ): ...
99
99
  def is_closed(self) -> bool: ...
100
100
  @property
@@ -5,9 +5,6 @@ import concurrent.futures
5
5
  import dataclasses
6
6
  import os
7
7
  import re
8
- import site
9
- import sys
10
- import sysconfig
11
8
  import time
12
9
  import typing
13
10
  import warnings
@@ -32,7 +29,7 @@ from ._utils.name_utils import check_object_name
32
29
  from ._utils.package_utils import get_module_mount_info
33
30
  from .client import _Client
34
31
  from .config import config, logger
35
- from .exception import ExecutionError, InvalidError, ModuleNotMountable
32
+ from .exception import ExecutionError, InvalidError
36
33
  from .file_pattern_matcher import FilePatternMatcher
37
34
 
38
35
  ROOT_DIR: PurePosixPath = PurePosixPath("/root")
@@ -800,22 +797,6 @@ def _get_client_mount():
800
797
  return _Mount.from_name(client_mount_name(), namespace=api_pb2.DEPLOYMENT_NAMESPACE_GLOBAL)
801
798
 
802
799
 
803
- SYS_PREFIXES = {
804
- Path(p)
805
- for p in (
806
- sys.prefix,
807
- sys.base_prefix,
808
- sys.exec_prefix,
809
- sys.base_exec_prefix,
810
- *sysconfig.get_paths().values(),
811
- *site.getsitepackages(),
812
- site.getusersitepackages(),
813
- )
814
- }
815
-
816
-
817
- SYS_PREFIXES |= {p.resolve() for p in SYS_PREFIXES}
818
-
819
800
  MODAL_PACKAGES = ["modal", "modal_proto", "modal_version"]
820
801
 
821
802
 
@@ -829,45 +810,3 @@ def _is_modal_path(remote_path: PurePosixPath):
829
810
  if is_modal_path:
830
811
  return True
831
812
  return False
832
-
833
-
834
- def get_sys_modules_mounts() -> dict[str, _Mount]:
835
- """mdmd:hidden
836
-
837
- Auto-mount local modules that have been imported in global scope.
838
- This may or may not include the "entrypoint" of the function as well, depending on how modal is invoked
839
- Note: sys.modules may change during the iteration
840
- """
841
- auto_mounts = {}
842
- top_level_modules = []
843
- skip_prefixes = set()
844
- for name, module in sorted(sys.modules.items(), key=lambda kv: len(kv[0])):
845
- parent = name.rsplit(".")[0]
846
- if parent and parent in skip_prefixes:
847
- skip_prefixes.add(name)
848
- continue
849
- skip_prefixes.add(name)
850
- top_level_modules.append((name, module))
851
-
852
- for module_name, module in top_level_modules:
853
- if module_name.startswith("__"):
854
- # skip "built in" modules like __main__ and __mp_main__
855
- # the running function's main file should be included anyway
856
- continue
857
-
858
- try:
859
- # at this point we don't know if the sys.modules module should be mounted or not
860
- potential_mount = _Mount._from_local_python_packages(module_name)
861
- mount_paths = potential_mount._top_level_paths()
862
- except ModuleNotMountable:
863
- # this typically happens if the module is a built-in, has binary components or doesn't exist
864
- continue
865
-
866
- for local_path, remote_path in mount_paths:
867
- if any(local_path.is_relative_to(p) for p in SYS_PREFIXES) or _is_modal_path(remote_path):
868
- # skip any module that has paths in SYS_PREFIXES, or would overwrite the modal Package in the container
869
- break
870
- else:
871
- auto_mounts[module_name] = potential_mount
872
-
873
- return auto_mounts
@@ -308,7 +308,6 @@ def _create_client_mount(): ...
308
308
  def create_client_mount(): ...
309
309
  def _get_client_mount(): ...
310
310
  def _is_modal_path(remote_path: pathlib.PurePosixPath): ...
311
- def get_sys_modules_mounts() -> dict[str, _Mount]: ...
312
311
 
313
312
  ROOT_DIR: pathlib.PurePosixPath
314
313
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: modal
3
- Version: 1.0.0.dev11
3
+ Version: 1.0.0.dev13
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License: Apache-2.0
@@ -1380,6 +1380,10 @@ message Function {
1380
1380
  // Note the value type as string. Internally we'll coerce all values to string with str().
1381
1381
  // On the server, it's necessary to convert back to the most natural type (e.g. int) when relevant.
1382
1382
  map<string, string> experimental_options = 81;
1383
+
1384
+ // If set, client deps will be mounted into the container, and are
1385
+ // no longer expected to exist in the image itself.
1386
+ bool mount_client_dependencies = 82;
1383
1387
  }
1384
1388
 
1385
1389
  message FunctionAsyncInvokeRequest {
@@ -1946,6 +1950,10 @@ message ImageMetadata {
1946
1950
  map<string, string> python_packages = 2;
1947
1951
  // The work directory of the image, defaulting to "/". Not set if missing
1948
1952
  optional string workdir = 3;
1953
+ // The image's libc version
1954
+ optional string libc_version_info = 4;
1955
+ // The builder version for/with which the image was created.
1956
+ optional string image_builder_version = 5;
1949
1957
  }
1950
1958
 
1951
1959