modal 1.1.2.dev44__py3-none-any.whl → 1.1.3.dev1__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.
- modal/_functions.py +68 -1
- modal/app.py +2 -2
- modal/client.pyi +2 -2
- modal/dict.py +7 -0
- modal/dict.pyi +18 -0
- modal/functions.pyi +55 -6
- modal/queue.py +7 -0
- modal/queue.pyi +18 -0
- modal/secret.py +7 -0
- modal/secret.pyi +18 -0
- modal/volume.py +10 -0
- modal/volume.pyi +21 -0
- {modal-1.1.2.dev44.dist-info → modal-1.1.3.dev1.dist-info}/METADATA +1 -1
- {modal-1.1.2.dev44.dist-info → modal-1.1.3.dev1.dist-info}/RECORD +22 -22
- modal_proto/api.proto +4 -1
- modal_proto/api_pb2.py +320 -320
- modal_proto/api_pb2.pyi +9 -2
- modal_version/__init__.py +1 -1
- {modal-1.1.2.dev44.dist-info → modal-1.1.3.dev1.dist-info}/WHEEL +0 -0
- {modal-1.1.2.dev44.dist-info → modal-1.1.3.dev1.dist-info}/entry_points.txt +0 -0
- {modal-1.1.2.dev44.dist-info → modal-1.1.3.dev1.dist-info}/licenses/LICENSE +0 -0
- {modal-1.1.2.dev44.dist-info → modal-1.1.3.dev1.dist-info}/top_level.txt +0 -0
modal/volume.pyi
CHANGED
@@ -105,6 +105,7 @@ class _VolumeManager:
|
|
105
105
|
modal.Volume.objects.create("my-volume", environment_name="dev")
|
106
106
|
```
|
107
107
|
|
108
|
+
By default, an error will be raised if the Volume already exists, but passing
|
108
109
|
`allow_existing=True` will make the creation attempt a no-op in this case.
|
109
110
|
|
110
111
|
```python notest
|
@@ -113,6 +114,8 @@ class _VolumeManager:
|
|
113
114
|
|
114
115
|
Note that this method does not return a local instance of the Volume. You can use
|
115
116
|
`modal.Volume.from_name` to perform a lookup after creation.
|
117
|
+
|
118
|
+
Added in v1.1.2.
|
116
119
|
"""
|
117
120
|
...
|
118
121
|
|
@@ -145,6 +148,8 @@ class _VolumeManager:
|
|
145
148
|
```python
|
146
149
|
volumes = modal.Volume.objects.list(max_objects=10, created_before="2025-01-01")
|
147
150
|
```
|
151
|
+
|
152
|
+
Added in v1.1.2.
|
148
153
|
"""
|
149
154
|
...
|
150
155
|
|
@@ -172,6 +177,8 @@ class _VolumeManager:
|
|
172
177
|
```python notest
|
173
178
|
await modal.Volume.objects.delete("my-volume", environment_name="dev")
|
174
179
|
```
|
180
|
+
|
181
|
+
Added in v1.1.2.
|
175
182
|
"""
|
176
183
|
...
|
177
184
|
|
@@ -206,6 +213,7 @@ class VolumeManager:
|
|
206
213
|
modal.Volume.objects.create("my-volume", environment_name="dev")
|
207
214
|
```
|
208
215
|
|
216
|
+
By default, an error will be raised if the Volume already exists, but passing
|
209
217
|
`allow_existing=True` will make the creation attempt a no-op in this case.
|
210
218
|
|
211
219
|
```python notest
|
@@ -214,6 +222,8 @@ class VolumeManager:
|
|
214
222
|
|
215
223
|
Note that this method does not return a local instance of the Volume. You can use
|
216
224
|
`modal.Volume.from_name` to perform a lookup after creation.
|
225
|
+
|
226
|
+
Added in v1.1.2.
|
217
227
|
"""
|
218
228
|
...
|
219
229
|
|
@@ -241,6 +251,7 @@ class VolumeManager:
|
|
241
251
|
modal.Volume.objects.create("my-volume", environment_name="dev")
|
242
252
|
```
|
243
253
|
|
254
|
+
By default, an error will be raised if the Volume already exists, but passing
|
244
255
|
`allow_existing=True` will make the creation attempt a no-op in this case.
|
245
256
|
|
246
257
|
```python notest
|
@@ -249,6 +260,8 @@ class VolumeManager:
|
|
249
260
|
|
250
261
|
Note that this method does not return a local instance of the Volume. You can use
|
251
262
|
`modal.Volume.from_name` to perform a lookup after creation.
|
263
|
+
|
264
|
+
Added in v1.1.2.
|
252
265
|
"""
|
253
266
|
...
|
254
267
|
|
@@ -285,6 +298,8 @@ class VolumeManager:
|
|
285
298
|
```python
|
286
299
|
volumes = modal.Volume.objects.list(max_objects=10, created_before="2025-01-01")
|
287
300
|
```
|
301
|
+
|
302
|
+
Added in v1.1.2.
|
288
303
|
"""
|
289
304
|
...
|
290
305
|
|
@@ -318,6 +333,8 @@ class VolumeManager:
|
|
318
333
|
```python
|
319
334
|
volumes = modal.Volume.objects.list(max_objects=10, created_before="2025-01-01")
|
320
335
|
```
|
336
|
+
|
337
|
+
Added in v1.1.2.
|
321
338
|
"""
|
322
339
|
...
|
323
340
|
|
@@ -349,6 +366,8 @@ class VolumeManager:
|
|
349
366
|
```python notest
|
350
367
|
await modal.Volume.objects.delete("my-volume", environment_name="dev")
|
351
368
|
```
|
369
|
+
|
370
|
+
Added in v1.1.2.
|
352
371
|
"""
|
353
372
|
...
|
354
373
|
|
@@ -377,6 +396,8 @@ class VolumeManager:
|
|
377
396
|
```python notest
|
378
397
|
await modal.Volume.objects.delete("my-volume", environment_name="dev")
|
379
398
|
```
|
399
|
+
|
400
|
+
Added in v1.1.2.
|
380
401
|
"""
|
381
402
|
...
|
382
403
|
|
@@ -3,7 +3,7 @@ modal/__main__.py,sha256=45H-GtwzaDfN-1nP4_HYvzN3s7AG_HXR4-ynrsjO_OI,2803
|
|
3
3
|
modal/_clustered_functions.py,sha256=zmrKbptRbqp4euS3LWncKaLXb8Kjj4YreusOzpEpRMk,2856
|
4
4
|
modal/_clustered_functions.pyi,sha256=_wtFjWocGf1WgI-qYBpbJPArNkg2H9JV7BVaGgMesEQ,1103
|
5
5
|
modal/_container_entrypoint.py,sha256=a1HAQYh1gGpqHuhSw6AW7XDYHztbeYr5a8iNnfCnoks,29023
|
6
|
-
modal/_functions.py,sha256=
|
6
|
+
modal/_functions.py,sha256=lPDk_KBKTS_FhOuLu15EXkvQndmoiNOnEe5A7BBd0ek,88003
|
7
7
|
modal/_ipython.py,sha256=TW1fkVOmZL3YYqdS2YlM1hqpf654Yf8ZyybHdBnlhSw,301
|
8
8
|
modal/_location.py,sha256=joiX-0ZeutEUDTrrqLF1GHXCdVLF-rHzstocbMcd_-k,366
|
9
9
|
modal/_object.py,sha256=gwsLdXb-Ecd8nH8LVCo8oVZPzzdyo9BrN1DjgQmsSuM,11967
|
@@ -18,11 +18,11 @@ modal/_tunnel.py,sha256=zTBxBiuH1O22tS1OliAJdIsSmaZS8PlnifS_6S5z-mk,6320
|
|
18
18
|
modal/_tunnel.pyi,sha256=rvC7USR2BcKkbZIeCJXwf7-UfGE-LPLjKsGNiK7Lxa4,13366
|
19
19
|
modal/_type_manager.py,sha256=DWjgmjYJuOagw2erin506UUbG2H5UzZCFEekS-7hmfA,9087
|
20
20
|
modal/_watcher.py,sha256=K6LYnlmSGQB4tWWI9JADv-tvSvQ1j522FwT71B51CX8,3584
|
21
|
-
modal/app.py,sha256=
|
21
|
+
modal/app.py,sha256=hJU3DGzP5GwYRmBj57XajljkQtLxkKftxXih2TYRcKo,48047
|
22
22
|
modal/app.pyi,sha256=0U2xVKD3yfHe5l2bcihTDjPl__tzOvx1AIYOTebu-5o,43375
|
23
23
|
modal/call_graph.py,sha256=1g2DGcMIJvRy-xKicuf63IVE98gJSnQsr8R_NVMptNc,2581
|
24
24
|
modal/client.py,sha256=kyAIVB3Ay-XKJizQ_1ufUFB__EagV0MLmHJpyYyJ7J0,18636
|
25
|
-
modal/client.pyi,sha256=
|
25
|
+
modal/client.pyi,sha256=bVZ9Zpw7u1pUdgnd19XiZnKVcli_DYZ557y9A6ujNF4,15829
|
26
26
|
modal/cloud_bucket_mount.py,sha256=YOe9nnvSr4ZbeCn587d7_VhE9IioZYRvF9VYQTQux08,5914
|
27
27
|
modal/cloud_bucket_mount.pyi,sha256=-qSfYAQvIoO_l2wsCCGTG5ZUwQieNKXdAO00yP1-LYU,7394
|
28
28
|
modal/cls.py,sha256=1mBcExFrLDTZwkD3Dzu8F26_CL0CGktOV9pE60Y8g_E,40689
|
@@ -30,8 +30,8 @@ modal/cls.pyi,sha256=TevKBrBez2R0_4Epsx5GB5gyQX_kQV-uVHPxpqEokhQ,28357
|
|
30
30
|
modal/config.py,sha256=tW-SEGjVvAt3D_MNi3LhxXnFKIA9fjLd3UIgbW8uSJE,12121
|
31
31
|
modal/container_process.py,sha256=XkPwNIW-iD_GB9u9yqv9q8y-i5cQ8eBbLZZ_GvEw9t8,6858
|
32
32
|
modal/container_process.pyi,sha256=9m-st3hCUlNN1GOTctfPPvIvoLtEl7FbuGWwif5-7YU,6037
|
33
|
-
modal/dict.py,sha256=
|
34
|
-
modal/dict.pyi,sha256=
|
33
|
+
modal/dict.py,sha256=azL6WHOAR49OsqB33Rqyd1j9ljbbW7blHZDuRV8xPrA,22676
|
34
|
+
modal/dict.pyi,sha256=x0PxEqfC8wNGe5u4Y1GI5W1J0H51e3ZG9kHdYFRVLvQ,33575
|
35
35
|
modal/environments.py,sha256=gHFNLG78bqgizpQ4w_elz27QOqmcgAonFsmLs7NjUJ4,6804
|
36
36
|
modal/environments.pyi,sha256=9-KtrzAcUe55cCP4020lSUD7-fWS7OPakAHssq4-bro,4219
|
37
37
|
modal/exception.py,sha256=o0V93PK8Hcg2YQ2aeOB1Y-qWBw4Gz5ATfyokR8GapuQ,5634
|
@@ -39,7 +39,7 @@ modal/file_io.py,sha256=OSKr77TujcXGJW1iikzYiHckLSmv07QBgBHcxxYEkoI,21456
|
|
39
39
|
modal/file_io.pyi,sha256=xtO6Glf_BFwDE7QiQQo24QqcMf_Vv-iz7WojcGVlLBU,15932
|
40
40
|
modal/file_pattern_matcher.py,sha256=A_Kdkej6q7YQyhM_2-BvpFmPqJ0oHb54B6yf9VqvPVE,8116
|
41
41
|
modal/functions.py,sha256=kcNHvqeGBxPI7Cgd57NIBBghkfbeFJzXO44WW0jSmao,325
|
42
|
-
modal/functions.pyi,sha256=
|
42
|
+
modal/functions.pyi,sha256=h1oPAvbErW_i1Glzf_HsQenG-uH4KZk7X6razFbif6M,38890
|
43
43
|
modal/gpu.py,sha256=Fe5ORvVPDIstSq1xjmM6OoNgLYFWvogP9r5BgmD3hYg,6769
|
44
44
|
modal/image.py,sha256=9pSLEGMxwal55AY-hbL4eTf0lq3xMwuQ0mN-Gc3E99M,103134
|
45
45
|
modal/image.pyi,sha256=zwCW80xe2BL7q4_kswfljKRrKjMkK5paTY26e5ITM1U,68507
|
@@ -59,8 +59,8 @@ modal/partial_function.pyi,sha256=lqqOzZ9-QvHTDWKQ_oAYYOvsXgTOBKhO9u-RI98JbUk,13
|
|
59
59
|
modal/proxy.py,sha256=CQydu_NPDgApN2GLdd7rrcg8PM-pXyFdVYcTaGMBRCQ,1491
|
60
60
|
modal/proxy.pyi,sha256=yWGWwADCRGrC2w81B7671UTH4Uv3HMZKy5vVqlJUZoA,1417
|
61
61
|
modal/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
62
|
-
modal/queue.py,sha256=
|
63
|
-
modal/queue.pyi,sha256=
|
62
|
+
modal/queue.py,sha256=ooD_-z3gthje_kxBZQ_xDfwyTy_cxtyn5oM9wt2sXTo,27133
|
63
|
+
modal/queue.pyi,sha256=EJ6extEFKclbEUBXk-PuRJ4bkUYRwWgAAUNofQBbBmo,39509
|
64
64
|
modal/retries.py,sha256=IvNLDM0f_GLUDD5VgEDoN09C88yoxSrCquinAuxT1Sc,5205
|
65
65
|
modal/runner.py,sha256=ostdzYpQb-20tlD6dIq7bpWTkZkOhjJBNuMNektqnJA,24068
|
66
66
|
modal/runner.pyi,sha256=lbwLljm1cC8d6PcNvmYQhkE8501V9fg0bYqqKX6G4r4,8489
|
@@ -69,8 +69,8 @@ modal/sandbox.py,sha256=O_vB-VgJ2ZMw2yyT2-ATYIWHdeDXCPf4cFcc-3JSB5Q,40895
|
|
69
69
|
modal/sandbox.pyi,sha256=HoHgwb167i83qiGhUE7UAy79l45wqfXKfOA9hZ5HiEo,41572
|
70
70
|
modal/schedule.py,sha256=ng0g0AqNY5GQI9KhkXZQ5Wam5G42glbkqVQsNpBtbDE,3078
|
71
71
|
modal/scheduler_placement.py,sha256=BAREdOY5HzHpzSBqt6jDVR6YC_jYfHMVqOzkyqQfngU,1235
|
72
|
-
modal/secret.py,sha256=
|
73
|
-
modal/secret.pyi,sha256=
|
72
|
+
modal/secret.py,sha256=jcNJKc4ZB2nvAn7HJFawInqE-_7sbB43IWLZwyLBQ28,19308
|
73
|
+
modal/secret.pyi,sha256=7EzD7nZGSZHQR-Hf5aRi0ooZGxvy1-G8A4ul-M04Qs4,21552
|
74
74
|
modal/serving.py,sha256=3I3WBeVbzZY258u9PXBCW_dZBgypq3OhwBuTVvlgubE,4423
|
75
75
|
modal/serving.pyi,sha256=YfixTaWikyYpwhnNxCHMZnDDQiPmV1xJ87QF91U_WGU,1924
|
76
76
|
modal/snapshot.py,sha256=E3oxYQkYVRB_LeFBfmUV1Y6vHz8-azXJfC4x7A1QKnI,1455
|
@@ -78,8 +78,8 @@ modal/snapshot.pyi,sha256=0q83hlmWxAhDu8xwZyL5VmYh0i8Tigf7S60or2k30L8,1682
|
|
78
78
|
modal/stream_type.py,sha256=A6320qoAAWhEfwOCZfGtymQTu5AfLfJXXgARqooTPvY,417
|
79
79
|
modal/token_flow.py,sha256=GWpar0gANs71vm9Bd_Cj87UG1K3ljTURbkEjG3JLsrY,7616
|
80
80
|
modal/token_flow.pyi,sha256=eirYjyqbRiT3GCKMIPHJPpkvBTu8WxDKqSHehWaJI_4,2533
|
81
|
-
modal/volume.py,sha256=
|
82
|
-
modal/volume.pyi,sha256=
|
81
|
+
modal/volume.py,sha256=bPC8632-LyeLOjJu2fKOFyod0QG7Hd5bb-UIJ5syCjo,53303
|
82
|
+
modal/volume.pyi,sha256=5VppIgoqoJqpivESYt5_oWgVTL__zlmpNZkOPk43JF8,54443
|
83
83
|
modal/_runtime/__init__.py,sha256=MIEP8jhXUeGq_eCjYFcqN5b1bxBM4fdk0VESpjWR0fc,28
|
84
84
|
modal/_runtime/asgi.py,sha256=yewQjvqPdXQ9SeEMMM53-h3Y22WlJNe28tFvPrrwguk,22607
|
85
85
|
modal/_runtime/container_io_manager.py,sha256=iiFxPfnJjnZd_l2Aj5TCR_O1dQwBcrvHccq0LSIJGZY,45719
|
@@ -153,7 +153,7 @@ modal/experimental/__init__.py,sha256=dPBPpxsmjZMLF3YjRrXoTvT01pl65wxi4UdFZsOem3
|
|
153
153
|
modal/experimental/flash.py,sha256=viXQumCIFp5VFsPFURdFTBTjP_QnsAi8nSWXAMmfjeQ,19744
|
154
154
|
modal/experimental/flash.pyi,sha256=A8_qJGtGoXEzKDdHbvhmCw7oqfneFEvJQK3ZdTOvUdU,10830
|
155
155
|
modal/experimental/ipython.py,sha256=TrCfmol9LGsRZMeDoeMPx3Hv3BFqQhYnmD_iH0pqdhk,2904
|
156
|
-
modal-1.1.
|
156
|
+
modal-1.1.3.dev1.dist-info/licenses/LICENSE,sha256=psuoW8kuDP96RQsdhzwOqi6fyWv0ct8CR6Jr7He_P_k,10173
|
157
157
|
modal_docs/__init__.py,sha256=svYKtV8HDwDCN86zbdWqyq5T8sMdGDj0PVlzc2tIxDM,28
|
158
158
|
modal_docs/gen_cli_docs.py,sha256=c1yfBS_x--gL5bs0N4ihMwqwX8l3IBWSkBAKNNIi6bQ,3801
|
159
159
|
modal_docs/gen_reference_docs.py,sha256=d_CQUGQ0rfw28u75I2mov9AlS773z9rG40-yq5o7g2U,6359
|
@@ -161,10 +161,10 @@ modal_docs/mdmd/__init__.py,sha256=svYKtV8HDwDCN86zbdWqyq5T8sMdGDj0PVlzc2tIxDM,2
|
|
161
161
|
modal_docs/mdmd/mdmd.py,sha256=tUTImNd4UMFk1opkaw8J672gX8AkBO5gbY2S_NMxsxs,7140
|
162
162
|
modal_docs/mdmd/signatures.py,sha256=XJaZrK7Mdepk5fdX51A8uENiLFNil85Ud0d4MH8H5f0,3218
|
163
163
|
modal_proto/__init__.py,sha256=MIEP8jhXUeGq_eCjYFcqN5b1bxBM4fdk0VESpjWR0fc,28
|
164
|
-
modal_proto/api.proto,sha256=
|
164
|
+
modal_proto/api.proto,sha256=srqE_dcKCEo5KmzQjguPH63O-QzcVHL_akZ-C3nwwLs,104765
|
165
165
|
modal_proto/api_grpc.py,sha256=AWsKZFdXr_T6LpWGlMM6BDY30RdOPjqgoPMijR-R1lI,127964
|
166
|
-
modal_proto/api_pb2.py,sha256=
|
167
|
-
modal_proto/api_pb2.pyi,sha256
|
166
|
+
modal_proto/api_pb2.py,sha256=yoKWv2SoqnPhZ4cwb6bxoljOvDJeoBI9-TMLgd6PZ0c,366803
|
167
|
+
modal_proto/api_pb2.pyi,sha256=-mbVs5im1-Zl9uUeOahfeNe0UQoZ2h_QJUg7GfiZncE,506061
|
168
168
|
modal_proto/api_pb2_grpc.py,sha256=kDZBX6i1KdRpm4P3c2wdRbGe3XOFtqGHSbWE0vOe4F4,276062
|
169
169
|
modal_proto/api_pb2_grpc.pyi,sha256=s1hjXmqaB3jGCSgnOouzncdfMVX0umPZd4TC1zObhgU,64579
|
170
170
|
modal_proto/modal_api_grpc.py,sha256=faBxtXAqoz6ei8ntNu1MQTL859FFHH_LZww_FP9wubw,19311
|
@@ -176,10 +176,10 @@ modal_proto/options_pb2.pyi,sha256=l7DBrbLO7q3Ir-XDkWsajm0d0TQqqrfuX54i4BMpdQg,1
|
|
176
176
|
modal_proto/options_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
|
177
177
|
modal_proto/options_pb2_grpc.pyi,sha256=CImmhxHsYnF09iENPoe8S4J-n93jtgUYD2JPAc0yJSI,247
|
178
178
|
modal_proto/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
179
|
-
modal_version/__init__.py,sha256=
|
179
|
+
modal_version/__init__.py,sha256=xf1PdBmEJxsZSFWSEYfuCTEa-coFAks9GquMLxOl8Dc,120
|
180
180
|
modal_version/__main__.py,sha256=2FO0yYQQwDTh6udt1h-cBnGd1c4ZyHnHSI4BksxzVac,105
|
181
|
-
modal-1.1.
|
182
|
-
modal-1.1.
|
183
|
-
modal-1.1.
|
184
|
-
modal-1.1.
|
185
|
-
modal-1.1.
|
181
|
+
modal-1.1.3.dev1.dist-info/METADATA,sha256=6NtHq8nqsBoTr_6bNey3-0P2102L0uWQPqrg_gOOnL0,2459
|
182
|
+
modal-1.1.3.dev1.dist-info/WHEEL,sha256=1tXe9gY0PYatrMPMDd6jXqjfpz_B-Wqm32CPfRC58XU,91
|
183
|
+
modal-1.1.3.dev1.dist-info/entry_points.txt,sha256=An-wYgeEUnm6xzrAP9_NTSTSciYvvEWsMZILtYrvpAI,46
|
184
|
+
modal-1.1.3.dev1.dist-info/top_level.txt,sha256=4BWzoKYREKUZ5iyPzZpjqx4G8uB5TWxXPDwibLcVa7k,43
|
185
|
+
modal-1.1.3.dev1.dist-info/RECORD,,
|
modal_proto/api.proto
CHANGED
@@ -2573,7 +2573,7 @@ message Sandbox {
|
|
2573
2573
|
Resources resources = 5;
|
2574
2574
|
CloudProvider cloud_provider = 6; // Deprecated at some point
|
2575
2575
|
|
2576
|
-
uint32 timeout_secs = 7;
|
2576
|
+
uint32 timeout_secs = 7; // The max lifetime of a sandbox in seconds.
|
2577
2577
|
|
2578
2578
|
optional string workdir = 8;
|
2579
2579
|
|
@@ -2635,6 +2635,9 @@ message Sandbox {
|
|
2635
2635
|
map<string, bool> experimental_options = 31;
|
2636
2636
|
|
2637
2637
|
repeated string preload_path_prefixes = 32; // Internal use only.
|
2638
|
+
|
2639
|
+
// Optional idle timeout in seconds. If set, the sandbox will be terminated after being idle for this duration.
|
2640
|
+
optional uint32 idle_timeout_secs = 33;
|
2638
2641
|
}
|
2639
2642
|
|
2640
2643
|
message SandboxCreateRequest {
|