modal 0.77.1.dev0__py3-none-any.whl → 1.0.0__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/__init__.py +10 -4
- modal/_functions.py +15 -90
- modal/_object.py +0 -14
- modal/_partial_function.py +4 -14
- modal/_serialization.py +2 -2
- modal/_utils/function_utils.py +3 -6
- modal/_utils/grpc_utils.py +6 -1
- modal/app.py +1 -104
- modal/app.pyi +0 -127
- modal/cli/app.py +0 -19
- modal/cli/programs/run_jupyter.py +1 -1
- modal/cli/programs/vscode.py +1 -1
- modal/client.pyi +2 -10
- modal/cls.py +9 -14
- modal/cls.pyi +2 -17
- modal/config.py +5 -16
- modal/container_process.py +1 -9
- modal/container_process.pyi +3 -3
- modal/dict.py +3 -5
- modal/environments.py +1 -3
- modal/exception.py +1 -1
- modal/functions.pyi +8 -29
- modal/image.py +12 -36
- modal/image.pyi +2 -5
- modal/mount.py +2 -65
- modal/mount.pyi +0 -1
- modal/network_file_system.py +3 -5
- modal/object.pyi +0 -6
- modal/queue.py +3 -5
- modal/runner.py +2 -19
- modal/runner.pyi +0 -5
- modal/sandbox.py +78 -32
- modal/sandbox.pyi +102 -7
- modal/secret.py +1 -3
- modal/serving.py +0 -6
- modal/serving.pyi +0 -3
- modal/volume.py +8 -17
- {modal-0.77.1.dev0.dist-info → modal-1.0.0.dist-info}/METADATA +1 -1
- {modal-0.77.1.dev0.dist-info → modal-1.0.0.dist-info}/RECORD +51 -51
- modal_proto/api.proto +29 -2
- modal_proto/api_grpc.py +32 -0
- modal_proto/api_pb2.py +788 -756
- modal_proto/api_pb2.pyi +86 -12
- modal_proto/api_pb2_grpc.py +66 -0
- modal_proto/api_pb2_grpc.pyi +20 -0
- modal_proto/modal_api_grpc.py +2 -0
- modal_version/__init__.py +1 -1
- {modal-0.77.1.dev0.dist-info → modal-1.0.0.dist-info}/WHEEL +0 -0
- {modal-0.77.1.dev0.dist-info → modal-1.0.0.dist-info}/entry_points.txt +0 -0
- {modal-0.77.1.dev0.dist-info → modal-1.0.0.dist-info}/licenses/LICENSE +0 -0
- {modal-0.77.1.dev0.dist-info → modal-1.0.0.dist-info}/top_level.txt +0 -0
@@ -1,56 +1,56 @@
|
|
1
|
-
modal/__init__.py,sha256=
|
1
|
+
modal/__init__.py,sha256=1131svUxi876UMFC6Z68qe5Z031ZfZ9NrduvGwHphj8,2710
|
2
2
|
modal/__main__.py,sha256=sTJcc9EbDuCKSwg3tL6ZckFw9WWdlkXW8mId1IvJCNc,2846
|
3
3
|
modal/_clustered_functions.py,sha256=kTf-9YBXY88NutC1akI-gCbvf01RhMPCw-zoOI_YIUE,2700
|
4
4
|
modal/_clustered_functions.pyi,sha256=2aWxN2v5WUnj-R-sk6BzJ-3AvggkQGQjwhtvbDH3pds,777
|
5
5
|
modal/_container_entrypoint.py,sha256=2Zx9O_EMJg0H77EdnC2vGKs6uFMWwbP1NLFf-qYmWmU,28962
|
6
|
-
modal/_functions.py,sha256=
|
6
|
+
modal/_functions.py,sha256=HSQ8BVar2RsMD4ud83iUKvE7NSyEoVsTc-3quW8YObA,77149
|
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
|
-
modal/_partial_function.py,sha256=
|
11
|
+
modal/_partial_function.py,sha256=wzUo_p8arngumPkM5sNIrZ2DluqJl-Z6w5Ds1jHGlyw,39151
|
12
12
|
modal/_pty.py,sha256=JZfPDDpzqICZqtyPI_oMJf_9w-p_lLNuzHhwhodUXio,1329
|
13
13
|
modal/_resolver.py,sha256=-nolqj_p_mx5czVYj1Mazh2IQWpSMrTOGughVJqYfo8,7579
|
14
14
|
modal/_resources.py,sha256=NMAp0GCLutiZI4GuKSIVnRHVlstoD3hNGUabjTUtzf4,1794
|
15
|
-
modal/_serialization.py,sha256=
|
15
|
+
modal/_serialization.py,sha256=iiD1SnSyEYRmZiVCaaWKJC87CamV-rqnyqs91XUjqoo,22971
|
16
16
|
modal/_traceback.py,sha256=IZQzB3fVlUfMHOSyKUgw0H6qv4yHnpyq-XVCNZKfUdA,5023
|
17
17
|
modal/_tunnel.py,sha256=zTBxBiuH1O22tS1OliAJdIsSmaZS8PlnifS_6S5z-mk,6320
|
18
18
|
modal/_tunnel.pyi,sha256=a4Ea0RQ5jaJB0A4LH9FANGB44ObqkHHGVDV4RwtokzU,1251
|
19
19
|
modal/_type_manager.py,sha256=DWjgmjYJuOagw2erin506UUbG2H5UzZCFEekS-7hmfA,9087
|
20
20
|
modal/_watcher.py,sha256=K6LYnlmSGQB4tWWI9JADv-tvSvQ1j522FwT71B51CX8,3584
|
21
|
-
modal/app.py,sha256=
|
22
|
-
modal/app.pyi,sha256=
|
21
|
+
modal/app.py,sha256=NZ_rJ9TuMfiNiLg8-gOFgufD5flGtXWPHOZI0gdD3hE,46585
|
22
|
+
modal/app.pyi,sha256=4-b_vbe3lNAqQPcMRpQCEDsE1zsVkQRJGUql9B7HvbM,22659
|
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=6PCtQqik5MbzfutNetQam4NQdO8xmjL_RKyUMZzZzmQ,8381
|
26
26
|
modal/cloud_bucket_mount.py,sha256=YOe9nnvSr4ZbeCn587d7_VhE9IioZYRvF9VYQTQux08,5914
|
27
27
|
modal/cloud_bucket_mount.pyi,sha256=30T3K1a89l6wzmEJ_J9iWv9SknoGqaZDx59Xs-ZQcmk,1607
|
28
|
-
modal/cls.py,sha256=
|
29
|
-
modal/cls.pyi,sha256
|
30
|
-
modal/config.py,sha256=
|
31
|
-
modal/container_process.py,sha256=
|
32
|
-
modal/container_process.pyi,sha256=
|
33
|
-
modal/dict.py,sha256=
|
28
|
+
modal/cls.py,sha256=dBbeARwOWftlKd1cwtM0cHFtQWSWkwVXwVmOV4w0SyI,37907
|
29
|
+
modal/cls.pyi,sha256=-gSV02T5S1La1dvmHHB_f139nNySk5MeXRSF4yp8z4s,12660
|
30
|
+
modal/config.py,sha256=e8sQ4RgwgJ_45S302vWUWs_wqRlKyEt3tU898RiaDKE,12073
|
31
|
+
modal/container_process.py,sha256=PDvjcyZ6eeN8foKQgR0WJ66Sg3lt7OFhK7Y_Akz6k5w,5846
|
32
|
+
modal/container_process.pyi,sha256=pPIUxVV_TY4huO2jF5cSSjb6L_EN7Es4xRvuwZ5sa5M,2802
|
33
|
+
modal/dict.py,sha256=w-Zuk3FXuwkyxKuF1ry86S8j2cvoC8-u4Ga0h-GfV1s,14324
|
34
34
|
modal/dict.pyi,sha256=RBaQyOd1ABRNN7vIf5L_rv94y7Kq5Qn9IlKHSr4j8N0,8120
|
35
|
-
modal/environments.py,sha256=
|
35
|
+
modal/environments.py,sha256=gHFNLG78bqgizpQ4w_elz27QOqmcgAonFsmLs7NjUJ4,6804
|
36
36
|
modal/environments.pyi,sha256=4HbI0kywveaUVI7HqDtZ4HphCTGXYi_wie2hz87up5A,3425
|
37
|
-
modal/exception.py,sha256=
|
37
|
+
modal/exception.py,sha256=cDiZMzkKZ2nLhaYG0Dt-_1YZs5LZEyUJNF05WqyCX90,5262
|
38
38
|
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=5T58OucdNU4I-LqhBdwsWSAGka-Wa8nP2GcZ5K1bOL0,16236
|
43
43
|
modal/gpu.py,sha256=Kbhs_u49FaC2Zi0TjCdrpstpRtT5eZgecynmQi5IZVE,6752
|
44
|
-
modal/image.py,sha256=
|
45
|
-
modal/image.pyi,sha256=
|
44
|
+
modal/image.py,sha256=yfOaKHS0YQtaAB1lb9Dv22fV5jqp_7qeIYLtz5vVc6w,91751
|
45
|
+
modal/image.pyi,sha256=V0IKbs_fAvkxzFrceJm5W_Dl4s5ATy4LEy8L2tMuemQ,25455
|
46
46
|
modal/io_streams.py,sha256=YDZVQSDv05DeXg5TwcucC9Rj5hQBx2GXdluan9rIUpw,15467
|
47
47
|
modal/io_streams.pyi,sha256=1UK6kWLREASQfq-wL9wSp5iqjLU0egRZPDn4LXs1PZY,5136
|
48
|
-
modal/mount.py,sha256=
|
49
|
-
modal/mount.pyi,sha256=
|
50
|
-
modal/network_file_system.py,sha256=
|
48
|
+
modal/mount.py,sha256=HbpGQbqqT5pTP4dh8j6USWXb2Fr1ro3V1uHIardkya4,30726
|
49
|
+
modal/mount.pyi,sha256=_qDhjR8Xg0ArdCw0JCivhhLCQO-Q-n_RlG5Ct4yJBQ0,12528
|
50
|
+
modal/network_file_system.py,sha256=lgtmHYjzA5gDMx0tysH0-WJB2Ao9JD2W15NyYK2A7_w,14612
|
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
|
@@ -59,26 +59,26 @@ modal/partial_function.pyi,sha256=NFWz1aCAs2B3-GnPf1cTatWRZOLnYpFKCnjP_X9iNRs,64
|
|
59
59
|
modal/proxy.py,sha256=XEjIHzZvbD3UW4YWyDzbDuNFq6hDUxyPPxupl2qwULY,1429
|
60
60
|
modal/proxy.pyi,sha256=FTTK1g3La8oLf0oXWeoTp1jMVKghzN_2UmESJoLvsn0,396
|
61
61
|
modal/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
62
|
-
modal/queue.py,sha256=
|
62
|
+
modal/queue.py,sha256=lu-QYW8GTqhZgX0TPTndmltT9uIWgLFV5mKZ_yTfmd4,18829
|
63
63
|
modal/queue.pyi,sha256=O0f0S5kM1P0GVgzUzgsN0XsI46B9cJem4kkWluFndjM,10632
|
64
64
|
modal/retries.py,sha256=IvNLDM0f_GLUDD5VgEDoN09C88yoxSrCquinAuxT1Sc,5205
|
65
|
-
modal/runner.py,sha256=
|
66
|
-
modal/runner.pyi,sha256=
|
65
|
+
modal/runner.py,sha256=nvpnU7U2O5d2WqME1QUTTwu-NkSLLwblytlGk7HXPAw,24152
|
66
|
+
modal/runner.pyi,sha256=1AnEu48SUPnLWp3raQ2zJCV5lc85EGLkX2nL0bHWaB0,5162
|
67
67
|
modal/running_app.py,sha256=v61mapYNV1-O-Uaho5EfJlryMLvIT9We0amUOSvSGx8,1188
|
68
|
-
modal/sandbox.py,sha256=
|
69
|
-
modal/sandbox.pyi,sha256=
|
68
|
+
modal/sandbox.py,sha256=VwbbQPK6e03kp11M8SQWbe6SLWSOwMaFwoQLYdP5EV0,35573
|
69
|
+
modal/sandbox.pyi,sha256=stxwoLcyQNToPISj6umlU8sDUgqzeooLdMs3BwIr740,28195
|
70
70
|
modal/schedule.py,sha256=ewa7hb9NKYnoeSCW2PujZAbGGJL8btX6X3KalCFpc_M,2626
|
71
71
|
modal/scheduler_placement.py,sha256=BAREdOY5HzHpzSBqt6jDVR6YC_jYfHMVqOzkyqQfngU,1235
|
72
|
-
modal/secret.py,sha256=
|
72
|
+
modal/secret.py,sha256=I2z-rgKWl_Ix107d2_Y2OWGXdFOuJ7zMOyDfIOdFI1A,10374
|
73
73
|
modal/secret.pyi,sha256=NY_dz0UjiYyn4u4LaBZwPP3Ji7SlTLpEyzrYK2sj9HQ,3103
|
74
|
-
modal/serving.py,sha256=
|
75
|
-
modal/serving.pyi,sha256=
|
74
|
+
modal/serving.py,sha256=3I3WBeVbzZY258u9PXBCW_dZBgypq3OhwBuTVvlgubE,4423
|
75
|
+
modal/serving.pyi,sha256=YfixTaWikyYpwhnNxCHMZnDDQiPmV1xJ87QF91U_WGU,1924
|
76
76
|
modal/snapshot.py,sha256=6rQvDP3iX9hdiAudKTy0-m0JESt4kk0q2gusXbaRA-8,1279
|
77
77
|
modal/snapshot.pyi,sha256=dIEBdTPb7O3VwkQ8TMPjfyU17RLuS9i0DnACxxHy8X4,676
|
78
78
|
modal/stream_type.py,sha256=A6320qoAAWhEfwOCZfGtymQTu5AfLfJXXgARqooTPvY,417
|
79
79
|
modal/token_flow.py,sha256=0_4KabXKsuE4OXTJ1OuLOtA-b1sesShztMZkkRFK7tA,7605
|
80
80
|
modal/token_flow.pyi,sha256=ILbRv6JsZq-jK8jcJM7eB74e0PsbzwBm7hyPcV9lBlQ,2121
|
81
|
-
modal/volume.py,sha256=
|
81
|
+
modal/volume.py,sha256=DeIIK2gYxZ0rShF5NC2DBFKMuIkig1l4fs8VUYNGztY,43236
|
82
82
|
modal/volume.pyi,sha256=9hPIMRBzGZycVL8uRfGpjSmNu_pCbkGAOyrnE86bU2Y,21113
|
83
83
|
modal/_runtime/__init__.py,sha256=MIEP8jhXUeGq_eCjYFcqN5b1bxBM4fdk0VESpjWR0fc,28
|
84
84
|
modal/_runtime/asgi.py,sha256=_2xSTsDD27Cit7xnMs4lzkJA2wzer2_N4Oa3BkXFzVA,22521
|
@@ -96,10 +96,10 @@ modal/_utils/blob_utils.py,sha256=IexC2Jbtqp_Tkmy62ayfgzTYte0UPCNufB_v-DO21g8,18
|
|
96
96
|
modal/_utils/bytes_io_segment_payload.py,sha256=uunxVJS4PE1LojF_UpURMzVK9GuvmYWRqQo_bxEj5TU,3385
|
97
97
|
modal/_utils/deprecation.py,sha256=EXP1beU4pmEqEzWMLw6E3kUfNfpmNA_VOp6i0EHi93g,4856
|
98
98
|
modal/_utils/docker_utils.py,sha256=h1uETghR40mp_y3fSWuZAfbIASH1HMzuphJHghAL6DU,3722
|
99
|
-
modal/_utils/function_utils.py,sha256=
|
99
|
+
modal/_utils/function_utils.py,sha256=bhrjyOHPPXm6fAyJx3bzI1Yh56j6xh8eeMSFKdAWrHQ,26978
|
100
100
|
modal/_utils/git_utils.py,sha256=qtUU6JAttF55ZxYq51y55OR58B0tDPZsZWK5dJe6W5g,3182
|
101
101
|
modal/_utils/grpc_testing.py,sha256=H1zHqthv19eGPJz2HKXDyWXWGSqO4BRsxah3L5Xaa8A,8619
|
102
|
-
modal/_utils/grpc_utils.py,sha256=
|
102
|
+
modal/_utils/grpc_utils.py,sha256=xSFosSJYQ4m6cH9WtChcSXqsnyk6DMeVvOHI4N3914g,10922
|
103
103
|
modal/_utils/hash_utils.py,sha256=zg3J6OGxTFGSFri1qQ12giDz90lWk8bzaxCTUCRtiX4,3034
|
104
104
|
modal/_utils/http_utils.py,sha256=yeTFsXYr0rYMEhB7vBP7audG9Uc7OLhzKBANFDZWVt0,2451
|
105
105
|
modal/_utils/jwt_utils.py,sha256=fxH9plyrbAemTbjSsQtzIdDXE9QXxvMC4DiUZ16G0aA,1360
|
@@ -117,7 +117,7 @@ modal/_vendor/tblib.py,sha256=g1O7QUDd3sDoLd8YPFltkXkih7r_fyZOjgmGuligv3s,9722
|
|
117
117
|
modal/cli/__init__.py,sha256=6FRleWQxBDT19y7OayO4lBOzuL6Bs9r0rLINYYYbHwQ,769
|
118
118
|
modal/cli/_download.py,sha256=tV8JFkncTtQKh85bSguQg6AW5aRRlynf-rvyN7ruigc,4337
|
119
119
|
modal/cli/_traceback.py,sha256=4ywtmFcmPnY3tqb4-3fA061N2tRiM01xs8fSagtkwhE,7293
|
120
|
-
modal/cli/app.py,sha256=
|
120
|
+
modal/cli/app.py,sha256=vImeK6UT-dA-01pEQ4NQvVQ0eOjdHRG_7-NmqdvSJSY,7639
|
121
121
|
modal/cli/cluster.py,sha256=EBDhkzfOtPSbwknYdYPBGYvRAwl4Gm7OJkD6_zxrcus,3106
|
122
122
|
modal/cli/config.py,sha256=QvFsqO4eUOtI7d_pQAOAyfq_ZitjhPtav3C6GIDQcZM,1680
|
123
123
|
modal/cli/container.py,sha256=FYwEgjf93j4NMorAjGbSV98i1wpebqdAeNU1wfrFp1k,3668
|
@@ -135,8 +135,8 @@ modal/cli/token.py,sha256=mxSgOWakXG6N71hQb1ko61XAR9ZGkTMZD-Txn7gmTac,1924
|
|
135
135
|
modal/cli/utils.py,sha256=hZmjyzcPjDnQSkLvycZD2LhGdcsfdZshs_rOU78EpvI,3717
|
136
136
|
modal/cli/volume.py,sha256=_PJ5Vn_prkLk_x1Lksx4kZySlKWqIn36T2Edd1-h7Mg,10497
|
137
137
|
modal/cli/programs/__init__.py,sha256=svYKtV8HDwDCN86zbdWqyq5T8sMdGDj0PVlzc2tIxDM,28
|
138
|
-
modal/cli/programs/run_jupyter.py,sha256=
|
139
|
-
modal/cli/programs/vscode.py,sha256=
|
138
|
+
modal/cli/programs/run_jupyter.py,sha256=44Lpvqk2l3hH-uOkmAOzw60NEsfB5uaRDWDKVshvQhs,2682
|
139
|
+
modal/cli/programs/vscode.py,sha256=KbTAaIXyQBVCDXxXjmBHmKpgXkUw0q4R4KkJvUjCYgk,3380
|
140
140
|
modal/experimental/__init__.py,sha256=GYWLyYHpO0xWxo1s-uP5ZuD8IBFKbhCUAke3kq3jv_4,8272
|
141
141
|
modal/experimental/ipython.py,sha256=epLUZeDSdE226TH_tU3igRKCiVuQi99mUOrIJ4SemOE,2792
|
142
142
|
modal/requirements/2023.12.312.txt,sha256=zWWUVgVQ92GXBKNYYr2-5vn9rlnXcmkqlwlX5u1eTYw,400
|
@@ -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-0.
|
149
|
+
modal-1.0.0.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
|
@@ -154,13 +154,13 @@ modal_docs/mdmd/__init__.py,sha256=svYKtV8HDwDCN86zbdWqyq5T8sMdGDj0PVlzc2tIxDM,2
|
|
154
154
|
modal_docs/mdmd/mdmd.py,sha256=Irx49MCCTlBOP4FBdLR--JrpA3-WhsVeriq0LGgsRic,6232
|
155
155
|
modal_docs/mdmd/signatures.py,sha256=XJaZrK7Mdepk5fdX51A8uENiLFNil85Ud0d4MH8H5f0,3218
|
156
156
|
modal_proto/__init__.py,sha256=MIEP8jhXUeGq_eCjYFcqN5b1bxBM4fdk0VESpjWR0fc,28
|
157
|
-
modal_proto/api.proto,sha256=
|
158
|
-
modal_proto/api_grpc.py,sha256=
|
159
|
-
modal_proto/api_pb2.py,sha256=
|
160
|
-
modal_proto/api_pb2.pyi,sha256=
|
161
|
-
modal_proto/api_pb2_grpc.py,sha256=
|
162
|
-
modal_proto/api_pb2_grpc.pyi,sha256=
|
163
|
-
modal_proto/modal_api_grpc.py,sha256=
|
157
|
+
modal_proto/api.proto,sha256=Qp0gpXAw0H8X8oPrU2Aa-_kewoI53-bUf0LWe_DO4hM,95862
|
158
|
+
modal_proto/api_grpc.py,sha256=iY5o_Tm4VDP-Wa1JgA_NpQa_Y-4FYB_RN9wdSUExjwI,117469
|
159
|
+
modal_proto/api_pb2.py,sha256=Jvq4X0FG5xQaiNVr7XlOZQWfmm_9b2JmN8LNT2hJJdU,337902
|
160
|
+
modal_proto/api_pb2.pyi,sha256=KNcKpRgynsi3y6bVGen_y6FrHnXXUMOyREqbJExqb6Y,461341
|
161
|
+
modal_proto/api_pb2_grpc.py,sha256=NL5prOS_hh_pA1hVvQP_ZRE1w49N-PR8iNPRZ65i6nA,254089
|
162
|
+
modal_proto/api_pb2_grpc.pyi,sha256=Xxgdcnv1mBnu5_AQxJ6fo0yz7GnqVU0HVObNfZWHVfM,59440
|
163
|
+
modal_proto/modal_api_grpc.py,sha256=0ir2lnwT3-IgPcAWw98yWMAiqZPkjvNro9UBk4u8hnk,17763
|
164
164
|
modal_proto/modal_options_grpc.py,sha256=qJ1cuwA54oRqrdTyPTbvfhFZYd9HhJKK5UCwt523r3Y,120
|
165
165
|
modal_proto/options.proto,sha256=zp9h5r61ivsp0XwEWwNBsVqNTbRA1VSY_UtN7sEcHtE,549
|
166
166
|
modal_proto/options_grpc.py,sha256=M18X3d-8F_cNYSVM3I25dUTO5rZ0rd-vCCfynfh13Nc,125
|
@@ -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=iUUSzB26fE9cjhnaUx7D0iEFdfRuOAQQDnfcJzj7Koo,115
|
173
173
|
modal_version/__main__.py,sha256=2FO0yYQQwDTh6udt1h-cBnGd1c4ZyHnHSI4BksxzVac,105
|
174
|
-
modal-0.
|
175
|
-
modal-0.
|
176
|
-
modal-0.
|
177
|
-
modal-0.
|
178
|
-
modal-0.
|
174
|
+
modal-1.0.0.dist-info/METADATA,sha256=ycvXv17itCkJaWynn4_kq_ogtAfdtz3qimEt62r5H0k,2449
|
175
|
+
modal-1.0.0.dist-info/WHEEL,sha256=1tXe9gY0PYatrMPMDd6jXqjfpz_B-Wqm32CPfRC58XU,91
|
176
|
+
modal-1.0.0.dist-info/entry_points.txt,sha256=An-wYgeEUnm6xzrAP9_NTSTSciYvvEWsMZILtYrvpAI,46
|
177
|
+
modal-1.0.0.dist-info/top_level.txt,sha256=4BWzoKYREKUZ5iyPzZpjqx4G8uB5TWxXPDwibLcVa7k,43
|
178
|
+
modal-1.0.0.dist-info/RECORD,,
|
modal_proto/api.proto
CHANGED
@@ -694,7 +694,7 @@ message ClassGetRequest {
|
|
694
694
|
DeploymentNamespace namespace = 3;
|
695
695
|
string environment_name = 4;
|
696
696
|
|
697
|
-
|
697
|
+
reserved 8; // lookup_published
|
698
698
|
reserved 9; // workspace_name
|
699
699
|
bool only_class_function = 10; // True starting with 0.67.x clients, which don't create method placeholder functions
|
700
700
|
}
|
@@ -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
|
|
@@ -2786,7 +2794,7 @@ message TaskLogs {
|
|
2786
2794
|
TaskProgress task_progress = 9;
|
2787
2795
|
string function_call_id = 10;
|
2788
2796
|
string input_id = 11;
|
2789
|
-
|
2797
|
+
uint64 timestamp_ns = 12;
|
2790
2798
|
}
|
2791
2799
|
|
2792
2800
|
message TaskLogsBatch {
|
@@ -2964,6 +2972,17 @@ message VolumeHeartbeatRequest {
|
|
2964
2972
|
string volume_id = 1;
|
2965
2973
|
}
|
2966
2974
|
|
2975
|
+
message VolumeListFiles2Request {
|
2976
|
+
string volume_id = 1;
|
2977
|
+
string path = 2;
|
2978
|
+
bool recursive = 4;
|
2979
|
+
optional uint32 max_entries = 3;
|
2980
|
+
}
|
2981
|
+
|
2982
|
+
message VolumeListFiles2Response {
|
2983
|
+
repeated FileEntry entries = 1;
|
2984
|
+
}
|
2985
|
+
|
2967
2986
|
message VolumeListFilesRequest {
|
2968
2987
|
string volume_id = 1;
|
2969
2988
|
string path = 2;
|
@@ -3082,6 +3101,12 @@ message VolumeReloadRequest {
|
|
3082
3101
|
string volume_id = 1;
|
3083
3102
|
}
|
3084
3103
|
|
3104
|
+
message VolumeRemoveFile2Request {
|
3105
|
+
string volume_id = 1 [ (modal.options.audit_target_attr) = true ];
|
3106
|
+
string path = 2;
|
3107
|
+
bool recursive = 3;
|
3108
|
+
}
|
3109
|
+
|
3085
3110
|
message VolumeRemoveFileRequest {
|
3086
3111
|
string volume_id = 1 [ (modal.options.audit_target_attr) = true ];
|
3087
3112
|
string path = 2;
|
@@ -3321,10 +3346,12 @@ service ModalClient {
|
|
3321
3346
|
rpc VolumeHeartbeat(VolumeHeartbeatRequest) returns (google.protobuf.Empty);
|
3322
3347
|
rpc VolumeList(VolumeListRequest) returns (VolumeListResponse);
|
3323
3348
|
rpc VolumeListFiles(VolumeListFilesRequest) returns (stream VolumeListFilesResponse);
|
3349
|
+
rpc VolumeListFiles2(VolumeListFiles2Request) returns (stream VolumeListFiles2Response);
|
3324
3350
|
rpc VolumePutFiles(VolumePutFilesRequest) returns (google.protobuf.Empty);
|
3325
3351
|
rpc VolumePutFiles2(VolumePutFiles2Request) returns (VolumePutFiles2Response);
|
3326
3352
|
rpc VolumeReload(VolumeReloadRequest) returns (google.protobuf.Empty);
|
3327
3353
|
rpc VolumeRemoveFile(VolumeRemoveFileRequest) returns (google.protobuf.Empty);
|
3354
|
+
rpc VolumeRemoveFile2(VolumeRemoveFile2Request) returns (google.protobuf.Empty);
|
3328
3355
|
rpc VolumeRename(VolumeRenameRequest) returns (google.protobuf.Empty);
|
3329
3356
|
|
3330
3357
|
// Workspaces
|
modal_proto/api_grpc.py
CHANGED
@@ -598,6 +598,10 @@ class ModalClientBase(abc.ABC):
|
|
598
598
|
async def VolumeListFiles(self, stream: 'grpclib.server.Stream[modal_proto.api_pb2.VolumeListFilesRequest, modal_proto.api_pb2.VolumeListFilesResponse]') -> None:
|
599
599
|
pass
|
600
600
|
|
601
|
+
@abc.abstractmethod
|
602
|
+
async def VolumeListFiles2(self, stream: 'grpclib.server.Stream[modal_proto.api_pb2.VolumeListFiles2Request, modal_proto.api_pb2.VolumeListFiles2Response]') -> None:
|
603
|
+
pass
|
604
|
+
|
601
605
|
@abc.abstractmethod
|
602
606
|
async def VolumePutFiles(self, stream: 'grpclib.server.Stream[modal_proto.api_pb2.VolumePutFilesRequest, google.protobuf.empty_pb2.Empty]') -> None:
|
603
607
|
pass
|
@@ -614,6 +618,10 @@ class ModalClientBase(abc.ABC):
|
|
614
618
|
async def VolumeRemoveFile(self, stream: 'grpclib.server.Stream[modal_proto.api_pb2.VolumeRemoveFileRequest, google.protobuf.empty_pb2.Empty]') -> None:
|
615
619
|
pass
|
616
620
|
|
621
|
+
@abc.abstractmethod
|
622
|
+
async def VolumeRemoveFile2(self, stream: 'grpclib.server.Stream[modal_proto.api_pb2.VolumeRemoveFile2Request, google.protobuf.empty_pb2.Empty]') -> None:
|
623
|
+
pass
|
624
|
+
|
617
625
|
@abc.abstractmethod
|
618
626
|
async def VolumeRename(self, stream: 'grpclib.server.Stream[modal_proto.api_pb2.VolumeRenameRequest, google.protobuf.empty_pb2.Empty]') -> None:
|
619
627
|
pass
|
@@ -1494,6 +1502,12 @@ class ModalClientBase(abc.ABC):
|
|
1494
1502
|
modal_proto.api_pb2.VolumeListFilesRequest,
|
1495
1503
|
modal_proto.api_pb2.VolumeListFilesResponse,
|
1496
1504
|
),
|
1505
|
+
'/modal.client.ModalClient/VolumeListFiles2': grpclib.const.Handler(
|
1506
|
+
self.VolumeListFiles2,
|
1507
|
+
grpclib.const.Cardinality.UNARY_STREAM,
|
1508
|
+
modal_proto.api_pb2.VolumeListFiles2Request,
|
1509
|
+
modal_proto.api_pb2.VolumeListFiles2Response,
|
1510
|
+
),
|
1497
1511
|
'/modal.client.ModalClient/VolumePutFiles': grpclib.const.Handler(
|
1498
1512
|
self.VolumePutFiles,
|
1499
1513
|
grpclib.const.Cardinality.UNARY_UNARY,
|
@@ -1518,6 +1532,12 @@ class ModalClientBase(abc.ABC):
|
|
1518
1532
|
modal_proto.api_pb2.VolumeRemoveFileRequest,
|
1519
1533
|
google.protobuf.empty_pb2.Empty,
|
1520
1534
|
),
|
1535
|
+
'/modal.client.ModalClient/VolumeRemoveFile2': grpclib.const.Handler(
|
1536
|
+
self.VolumeRemoveFile2,
|
1537
|
+
grpclib.const.Cardinality.UNARY_UNARY,
|
1538
|
+
modal_proto.api_pb2.VolumeRemoveFile2Request,
|
1539
|
+
google.protobuf.empty_pb2.Empty,
|
1540
|
+
),
|
1521
1541
|
'/modal.client.ModalClient/VolumeRename': grpclib.const.Handler(
|
1522
1542
|
self.VolumeRename,
|
1523
1543
|
grpclib.const.Cardinality.UNARY_UNARY,
|
@@ -2406,6 +2426,12 @@ class ModalClientStub:
|
|
2406
2426
|
modal_proto.api_pb2.VolumeListFilesRequest,
|
2407
2427
|
modal_proto.api_pb2.VolumeListFilesResponse,
|
2408
2428
|
)
|
2429
|
+
self.VolumeListFiles2 = grpclib.client.UnaryStreamMethod(
|
2430
|
+
channel,
|
2431
|
+
'/modal.client.ModalClient/VolumeListFiles2',
|
2432
|
+
modal_proto.api_pb2.VolumeListFiles2Request,
|
2433
|
+
modal_proto.api_pb2.VolumeListFiles2Response,
|
2434
|
+
)
|
2409
2435
|
self.VolumePutFiles = grpclib.client.UnaryUnaryMethod(
|
2410
2436
|
channel,
|
2411
2437
|
'/modal.client.ModalClient/VolumePutFiles',
|
@@ -2430,6 +2456,12 @@ class ModalClientStub:
|
|
2430
2456
|
modal_proto.api_pb2.VolumeRemoveFileRequest,
|
2431
2457
|
google.protobuf.empty_pb2.Empty,
|
2432
2458
|
)
|
2459
|
+
self.VolumeRemoveFile2 = grpclib.client.UnaryUnaryMethod(
|
2460
|
+
channel,
|
2461
|
+
'/modal.client.ModalClient/VolumeRemoveFile2',
|
2462
|
+
modal_proto.api_pb2.VolumeRemoveFile2Request,
|
2463
|
+
google.protobuf.empty_pb2.Empty,
|
2464
|
+
)
|
2433
2465
|
self.VolumeRename = grpclib.client.UnaryUnaryMethod(
|
2434
2466
|
channel,
|
2435
2467
|
'/modal.client.ModalClient/VolumeRename',
|