modal 1.0.0.dev3__py3-none-any.whl → 1.0.0.dev4__py3-none-any.whl
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.
- modal/_object.py +0 -14
- modal/client.pyi +2 -2
- modal/functions.pyi +6 -6
- modal/image.py +5 -2
- modal/object.pyi +0 -6
- {modal-1.0.0.dev3.dist-info → modal-1.0.0.dev4.dist-info}/METADATA +1 -1
- {modal-1.0.0.dev3.dist-info → modal-1.0.0.dev4.dist-info}/RECORD +12 -12
- modal_version/__init__.py +1 -1
- {modal-1.0.0.dev3.dist-info → modal-1.0.0.dev4.dist-info}/WHEEL +0 -0
- {modal-1.0.0.dev3.dist-info → modal-1.0.0.dev4.dist-info}/entry_points.txt +0 -0
- {modal-1.0.0.dev3.dist-info → modal-1.0.0.dev4.dist-info}/licenses/LICENSE +0 -0
- {modal-1.0.0.dev3.dist-info → modal-1.0.0.dev4.dist-info}/top_level.txt +0 -0
modal/_object.py
CHANGED
@@ -10,7 +10,6 @@ from typing_extensions import Self
|
|
10
10
|
|
11
11
|
from ._resolver import Resolver
|
12
12
|
from ._utils.async_utils import aclosing
|
13
|
-
from ._utils.deprecation import deprecation_warning
|
14
13
|
from .client import _Client
|
15
14
|
from .config import config, logger
|
16
15
|
from .exception import ExecutionError, InvalidError
|
@@ -237,19 +236,6 @@ class _Object:
|
|
237
236
|
|
238
237
|
return self._deps if self._deps is not None else default_deps
|
239
238
|
|
240
|
-
async def resolve(self, client: Optional[_Client] = None):
|
241
|
-
"""mdmd:hidden"""
|
242
|
-
obj = self.__class__.__name__.strip("_")
|
243
|
-
deprecation_warning(
|
244
|
-
(2025, 1, 16),
|
245
|
-
f"The `{obj}.resolve` method is deprecated and will be removed in a future release."
|
246
|
-
f" Please use `{obj}.hydrate()` or `await {obj}.hydrate.aio()` instead."
|
247
|
-
"\n\nNote that it is rarely necessary to explicitly hydrate objects, as most methods"
|
248
|
-
" will lazily hydrate when needed.",
|
249
|
-
show_source=False, # synchronicity interferes with attributing source correctly
|
250
|
-
)
|
251
|
-
await self.hydrate(client)
|
252
|
-
|
253
239
|
async def hydrate(self, client: Optional[_Client] = None) -> Self:
|
254
240
|
"""Synchronize the local object with its identity on the Modal server.
|
255
241
|
|
modal/client.pyi
CHANGED
@@ -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.
|
34
|
+
version: str = "1.0.0.dev4",
|
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.
|
97
|
+
version: str = "1.0.0.dev4",
|
98
98
|
): ...
|
99
99
|
def is_closed(self) -> bool: ...
|
100
100
|
@property
|
modal/functions.pyi
CHANGED
@@ -234,11 +234,11 @@ class Function(
|
|
234
234
|
|
235
235
|
_call_generator_nowait: ___call_generator_nowait_spec[typing_extensions.Self]
|
236
236
|
|
237
|
-
class __remote_spec(typing_extensions.Protocol[
|
237
|
+
class __remote_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER, SUPERSELF]):
|
238
238
|
def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> ReturnType_INNER: ...
|
239
239
|
async def aio(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> ReturnType_INNER: ...
|
240
240
|
|
241
|
-
remote: __remote_spec[modal._functions.
|
241
|
+
remote: __remote_spec[modal._functions.ReturnType, modal._functions.P, typing_extensions.Self]
|
242
242
|
|
243
243
|
class __remote_gen_spec(typing_extensions.Protocol[SUPERSELF]):
|
244
244
|
def __call__(self, /, *args, **kwargs) -> typing.Generator[typing.Any, None, None]: ...
|
@@ -253,12 +253,12 @@ class Function(
|
|
253
253
|
self, *args: modal._functions.P.args, **kwargs: modal._functions.P.kwargs
|
254
254
|
) -> modal._functions.OriginalReturnType: ...
|
255
255
|
|
256
|
-
class ___experimental_spawn_spec(typing_extensions.Protocol[
|
256
|
+
class ___experimental_spawn_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER, SUPERSELF]):
|
257
257
|
def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> FunctionCall[ReturnType_INNER]: ...
|
258
258
|
async def aio(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> FunctionCall[ReturnType_INNER]: ...
|
259
259
|
|
260
260
|
_experimental_spawn: ___experimental_spawn_spec[
|
261
|
-
modal._functions.
|
261
|
+
modal._functions.ReturnType, modal._functions.P, typing_extensions.Self
|
262
262
|
]
|
263
263
|
|
264
264
|
class ___spawn_map_inner_spec(typing_extensions.Protocol[P_INNER, SUPERSELF]):
|
@@ -267,11 +267,11 @@ class Function(
|
|
267
267
|
|
268
268
|
_spawn_map_inner: ___spawn_map_inner_spec[modal._functions.P, typing_extensions.Self]
|
269
269
|
|
270
|
-
class __spawn_spec(typing_extensions.Protocol[
|
270
|
+
class __spawn_spec(typing_extensions.Protocol[ReturnType_INNER, P_INNER, SUPERSELF]):
|
271
271
|
def __call__(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> FunctionCall[ReturnType_INNER]: ...
|
272
272
|
async def aio(self, /, *args: P_INNER.args, **kwargs: P_INNER.kwargs) -> FunctionCall[ReturnType_INNER]: ...
|
273
273
|
|
274
|
-
spawn: __spawn_spec[modal._functions.
|
274
|
+
spawn: __spawn_spec[modal._functions.ReturnType, modal._functions.P, typing_extensions.Self]
|
275
275
|
|
276
276
|
def get_raw_f(self) -> collections.abc.Callable[..., typing.Any]: ...
|
277
277
|
|
modal/image.py
CHANGED
@@ -1011,13 +1011,16 @@ class _Image(_Object, type_prefix="im"):
|
|
1011
1011
|
pkgs = _flatten_str_args("pip_install", "packages", packages)
|
1012
1012
|
if not pkgs:
|
1013
1013
|
return self
|
1014
|
+
elif not _validate_packages(pkgs):
|
1015
|
+
raise InvalidError(
|
1016
|
+
"Package list for `Image.pip_install` cannot contain other arguments;"
|
1017
|
+
" try the `extra_options` parameter instead."
|
1018
|
+
)
|
1014
1019
|
|
1015
1020
|
def build_dockerfile(version: ImageBuilderVersion) -> DockerfileSpec:
|
1016
1021
|
package_args = shlex.join(sorted(pkgs))
|
1017
1022
|
extra_args = _make_pip_install_args(find_links, index_url, extra_index_url, pre, extra_options)
|
1018
1023
|
commands = ["FROM base", f"RUN python -m pip install {package_args} {extra_args}"]
|
1019
|
-
if not _validate_packages(pkgs):
|
1020
|
-
_warn_invalid_packages(commands[-1].split("RUN ")[-1])
|
1021
1024
|
if version > "2023.12": # Back-compat for legacy trailing space with empty extra_args
|
1022
1025
|
commands = [cmd.strip() for cmd in commands]
|
1023
1026
|
return DockerfileSpec(commands=commands, context_files={})
|
modal/object.pyi
CHANGED
@@ -124,12 +124,6 @@ class Object:
|
|
124
124
|
@property
|
125
125
|
def deps(self) -> collections.abc.Callable[..., collections.abc.Sequence[Object]]: ...
|
126
126
|
|
127
|
-
class __resolve_spec(typing_extensions.Protocol[SUPERSELF]):
|
128
|
-
def __call__(self, /, client: typing.Optional[modal.client.Client] = None): ...
|
129
|
-
async def aio(self, /, client: typing.Optional[modal.client.Client] = None): ...
|
130
|
-
|
131
|
-
resolve: __resolve_spec[typing_extensions.Self]
|
132
|
-
|
133
127
|
class __hydrate_spec(typing_extensions.Protocol[SUPERSELF]):
|
134
128
|
def __call__(self, /, client: typing.Optional[modal.client.Client] = None) -> SUPERSELF: ...
|
135
129
|
async def aio(self, /, client: typing.Optional[modal.client.Client] = None) -> SUPERSELF: ...
|
@@ -6,7 +6,7 @@ modal/_container_entrypoint.py,sha256=2Zx9O_EMJg0H77EdnC2vGKs6uFMWwbP1NLFf-qYmWm
|
|
6
6
|
modal/_functions.py,sha256=3ftxwJd-4bSZlEDv2SFGQBgakXqLiTvV_itoAShXrY8,80765
|
7
7
|
modal/_ipython.py,sha256=TW1fkVOmZL3YYqdS2YlM1hqpf654Yf8ZyybHdBnlhSw,301
|
8
8
|
modal/_location.py,sha256=joiX-0ZeutEUDTrrqLF1GHXCdVLF-rHzstocbMcd_-k,366
|
9
|
-
modal/_object.py,sha256=
|
9
|
+
modal/_object.py,sha256=KzzzZoM41UQUiY9TKOrft9BtZKgjWG_ukdlyLGjB4UY,10758
|
10
10
|
modal/_output.py,sha256=Z0nngPh2mKHMQc4MQ92YjVPc3ewOLa3I4dFBlL9nvQY,25656
|
11
11
|
modal/_partial_function.py,sha256=rxao4kjCoHYvV7esRFzIUiOW7y6jTGIyTYvYuCtBfjE,39140
|
12
12
|
modal/_pty.py,sha256=JZfPDDpzqICZqtyPI_oMJf_9w-p_lLNuzHhwhodUXio,1329
|
@@ -22,7 +22,7 @@ modal/app.py,sha256=nwA0G0ZG9SOi3IMHtOHpLymbH0KY8mjVNftUjtWmgtc,51244
|
|
22
22
|
modal/app.pyi,sha256=zNwR1_2LpmQc9AhemuAeVdk90XNYDw9keOkXAwAATeA,28732
|
23
23
|
modal/call_graph.py,sha256=1g2DGcMIJvRy-xKicuf63IVE98gJSnQsr8R_NVMptNc,2581
|
24
24
|
modal/client.py,sha256=o-aQThHpvDHUzg_kUafyhWzACViUBhY2WLZ2EitnSHA,16787
|
25
|
-
modal/client.pyi,sha256=
|
25
|
+
modal/client.pyi,sha256=8jDOC7EziMc2rCfQUaAh0d7XIbVzFN0rF6ZxejJmRg8,8457
|
26
26
|
modal/cloud_bucket_mount.py,sha256=YOe9nnvSr4ZbeCn587d7_VhE9IioZYRvF9VYQTQux08,5914
|
27
27
|
modal/cloud_bucket_mount.pyi,sha256=30T3K1a89l6wzmEJ_J9iWv9SknoGqaZDx59Xs-ZQcmk,1607
|
28
28
|
modal/cls.py,sha256=KKCzn4xTo0hz4t9WxcYVDIHA3_Vm4kPs3UnBq134H58,38238
|
@@ -39,9 +39,9 @@ modal/file_io.py,sha256=lcMs_E9Xfm0YX1t9U2wNIBPnqHRxmImqjLW1GHqVmyg,20945
|
|
39
39
|
modal/file_io.pyi,sha256=oB7x-rKq7bmm8cA7Z7W9C9yeko7KK9m9i5GidFnkGK4,9569
|
40
40
|
modal/file_pattern_matcher.py,sha256=wov-otB5M1oTdrYDtR2_VgacYin2srdtAP4McA1Cqzw,6516
|
41
41
|
modal/functions.py,sha256=kcNHvqeGBxPI7Cgd57NIBBghkfbeFJzXO44WW0jSmao,325
|
42
|
-
modal/functions.pyi,sha256=
|
42
|
+
modal/functions.pyi,sha256=jg9x3tdhoLWrlmAxsA0gknuRxbbR2lFSo-ZSulV7lH0,17001
|
43
43
|
modal/gpu.py,sha256=Kbhs_u49FaC2Zi0TjCdrpstpRtT5eZgecynmQi5IZVE,6752
|
44
|
-
modal/image.py,sha256=
|
44
|
+
modal/image.py,sha256=7YZwSbUMAU1zT3OsoCL3ty4dfaNAjvVJWjjVcGZ1ZcE,92929
|
45
45
|
modal/image.pyi,sha256=MDq7tNJevElK78VxFYrZRe_00kz9gPdg98MN5c6fFoE,25644
|
46
46
|
modal/io_streams.py,sha256=YDZVQSDv05DeXg5TwcucC9Rj5hQBx2GXdluan9rIUpw,15467
|
47
47
|
modal/io_streams.pyi,sha256=1UK6kWLREASQfq-wL9wSp5iqjLU0egRZPDn4LXs1PZY,5136
|
@@ -50,7 +50,7 @@ modal/mount.pyi,sha256=PHs-N9LGSDfYWw70UrhvGZW_6uWwyx-1GAieROzCNNs,12583
|
|
50
50
|
modal/network_file_system.py,sha256=P65zs04YkRyGm1uGNbIYzjQH-YGdCTBiW6L5q_JoYh4,14592
|
51
51
|
modal/network_file_system.pyi,sha256=58DiUqHGlARmI3cz-Yo7IFObKKFIiGh5UIU5JxGNFfc,8333
|
52
52
|
modal/object.py,sha256=bTeskuY8JFrESjU4_UL_nTwYlBQdOLmVaOX3X6EMxsg,164
|
53
|
-
modal/object.pyi,sha256=
|
53
|
+
modal/object.pyi,sha256=UkR8NQ1jCIaw3hBUPxBRc6vvrOqtV37G_hsW2O5-4wE,5378
|
54
54
|
modal/output.py,sha256=q4T9uHduunj4NwY-YSwkHGgjZlCXMuJbfQ5UFaAGRAc,1968
|
55
55
|
modal/parallel_map.py,sha256=zU2zL8_9PmmNC9Ny2GB7K2_HbAdPU7RiVLN0GtzaDls,35923
|
56
56
|
modal/parallel_map.pyi,sha256=mhYGQmufQEJbjNrX7vNhBS2gUdfBrpmuWNUHth_Dz6U,6140
|
@@ -146,7 +146,7 @@ modal/requirements/2024.10.txt,sha256=qD-5cVIVM9wXesJ6JC89Ew-3m2KjEElUz3jaw_MddR
|
|
146
146
|
modal/requirements/PREVIEW.txt,sha256=qD-5cVIVM9wXesJ6JC89Ew-3m2KjEElUz3jaw_MddRo,296
|
147
147
|
modal/requirements/README.md,sha256=9tK76KP0Uph7O0M5oUgsSwEZDj5y-dcUPsnpR0Sc-Ik,854
|
148
148
|
modal/requirements/base-images.json,sha256=57vMSqzMbLBxw5tFWSaMiIkkVEps4JfX5PAtXGnkS4U,740
|
149
|
-
modal-1.0.0.
|
149
|
+
modal-1.0.0.dev4.dist-info/licenses/LICENSE,sha256=psuoW8kuDP96RQsdhzwOqi6fyWv0ct8CR6Jr7He_P_k,10173
|
150
150
|
modal_docs/__init__.py,sha256=svYKtV8HDwDCN86zbdWqyq5T8sMdGDj0PVlzc2tIxDM,28
|
151
151
|
modal_docs/gen_cli_docs.py,sha256=c1yfBS_x--gL5bs0N4ihMwqwX8l3IBWSkBAKNNIi6bQ,3801
|
152
152
|
modal_docs/gen_reference_docs.py,sha256=d_CQUGQ0rfw28u75I2mov9AlS773z9rG40-yq5o7g2U,6359
|
@@ -169,10 +169,10 @@ modal_proto/options_pb2.pyi,sha256=l7DBrbLO7q3Ir-XDkWsajm0d0TQqqrfuX54i4BMpdQg,1
|
|
169
169
|
modal_proto/options_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
170
170
|
modal_proto/options_pb2_grpc.pyi,sha256=CImmhxHsYnF09iENPoe8S4J-n93jtgUYD2JPAc0yJSI,247
|
171
171
|
modal_proto/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
172
|
-
modal_version/__init__.py,sha256=
|
172
|
+
modal_version/__init__.py,sha256=fNO9nUEfGqjkZDHiwmtroPn32X2fBv5mZBmsYuHxsjI,120
|
173
173
|
modal_version/__main__.py,sha256=2FO0yYQQwDTh6udt1h-cBnGd1c4ZyHnHSI4BksxzVac,105
|
174
|
-
modal-1.0.0.
|
175
|
-
modal-1.0.0.
|
176
|
-
modal-1.0.0.
|
177
|
-
modal-1.0.0.
|
178
|
-
modal-1.0.0.
|
174
|
+
modal-1.0.0.dev4.dist-info/METADATA,sha256=x--7hExzY6f2wI6_fikd9--d2P4R8oyJfflS-CpPFFQ,2454
|
175
|
+
modal-1.0.0.dev4.dist-info/WHEEL,sha256=1tXe9gY0PYatrMPMDd6jXqjfpz_B-Wqm32CPfRC58XU,91
|
176
|
+
modal-1.0.0.dev4.dist-info/entry_points.txt,sha256=An-wYgeEUnm6xzrAP9_NTSTSciYvvEWsMZILtYrvpAI,46
|
177
|
+
modal-1.0.0.dev4.dist-info/top_level.txt,sha256=4BWzoKYREKUZ5iyPzZpjqx4G8uB5TWxXPDwibLcVa7k,43
|
178
|
+
modal-1.0.0.dev4.dist-info/RECORD,,
|
modal_version/__init__.py
CHANGED
File without changes
|
File without changes
|
File without changes
|
File without changes
|