modal 1.0.3.dev10__py3-none-any.whl → 1.2.3.dev7__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.

Files changed (160) hide show
  1. modal/__init__.py +0 -2
  2. modal/__main__.py +3 -4
  3. modal/_billing.py +80 -0
  4. modal/_clustered_functions.py +7 -3
  5. modal/_clustered_functions.pyi +15 -3
  6. modal/_container_entrypoint.py +51 -69
  7. modal/_functions.py +508 -240
  8. modal/_grpc_client.py +171 -0
  9. modal/_load_context.py +105 -0
  10. modal/_object.py +81 -21
  11. modal/_output.py +58 -45
  12. modal/_partial_function.py +48 -73
  13. modal/_pty.py +7 -3
  14. modal/_resolver.py +26 -46
  15. modal/_runtime/asgi.py +4 -3
  16. modal/_runtime/container_io_manager.py +358 -220
  17. modal/_runtime/container_io_manager.pyi +296 -101
  18. modal/_runtime/execution_context.py +18 -2
  19. modal/_runtime/execution_context.pyi +64 -7
  20. modal/_runtime/gpu_memory_snapshot.py +262 -57
  21. modal/_runtime/user_code_imports.py +28 -58
  22. modal/_serialization.py +90 -6
  23. modal/_traceback.py +42 -1
  24. modal/_tunnel.pyi +380 -12
  25. modal/_utils/async_utils.py +84 -29
  26. modal/_utils/auth_token_manager.py +111 -0
  27. modal/_utils/blob_utils.py +181 -58
  28. modal/_utils/deprecation.py +19 -0
  29. modal/_utils/function_utils.py +91 -47
  30. modal/_utils/grpc_utils.py +89 -66
  31. modal/_utils/mount_utils.py +26 -1
  32. modal/_utils/name_utils.py +17 -3
  33. modal/_utils/task_command_router_client.py +536 -0
  34. modal/_utils/time_utils.py +34 -6
  35. modal/app.py +256 -88
  36. modal/app.pyi +909 -92
  37. modal/billing.py +5 -0
  38. modal/builder/2025.06.txt +18 -0
  39. modal/builder/PREVIEW.txt +18 -0
  40. modal/builder/base-images.json +58 -0
  41. modal/cli/_download.py +19 -3
  42. modal/cli/_traceback.py +3 -2
  43. modal/cli/app.py +4 -4
  44. modal/cli/cluster.py +15 -7
  45. modal/cli/config.py +5 -3
  46. modal/cli/container.py +7 -6
  47. modal/cli/dict.py +22 -16
  48. modal/cli/entry_point.py +12 -5
  49. modal/cli/environment.py +5 -4
  50. modal/cli/import_refs.py +3 -3
  51. modal/cli/launch.py +102 -5
  52. modal/cli/network_file_system.py +11 -12
  53. modal/cli/profile.py +3 -2
  54. modal/cli/programs/launch_instance_ssh.py +94 -0
  55. modal/cli/programs/run_jupyter.py +1 -1
  56. modal/cli/programs/run_marimo.py +95 -0
  57. modal/cli/programs/vscode.py +1 -1
  58. modal/cli/queues.py +57 -26
  59. modal/cli/run.py +91 -23
  60. modal/cli/secret.py +48 -22
  61. modal/cli/token.py +7 -8
  62. modal/cli/utils.py +4 -7
  63. modal/cli/volume.py +31 -25
  64. modal/client.py +15 -85
  65. modal/client.pyi +183 -62
  66. modal/cloud_bucket_mount.py +5 -3
  67. modal/cloud_bucket_mount.pyi +197 -5
  68. modal/cls.py +200 -126
  69. modal/cls.pyi +446 -68
  70. modal/config.py +29 -11
  71. modal/container_process.py +319 -19
  72. modal/container_process.pyi +190 -20
  73. modal/dict.py +290 -71
  74. modal/dict.pyi +835 -83
  75. modal/environments.py +15 -27
  76. modal/environments.pyi +46 -24
  77. modal/exception.py +14 -2
  78. modal/experimental/__init__.py +194 -40
  79. modal/experimental/flash.py +618 -0
  80. modal/experimental/flash.pyi +380 -0
  81. modal/experimental/ipython.py +11 -7
  82. modal/file_io.py +29 -36
  83. modal/file_io.pyi +251 -53
  84. modal/file_pattern_matcher.py +56 -16
  85. modal/functions.pyi +673 -92
  86. modal/gpu.py +1 -1
  87. modal/image.py +528 -176
  88. modal/image.pyi +1572 -145
  89. modal/io_streams.py +458 -128
  90. modal/io_streams.pyi +433 -52
  91. modal/mount.py +216 -151
  92. modal/mount.pyi +225 -78
  93. modal/network_file_system.py +45 -62
  94. modal/network_file_system.pyi +277 -56
  95. modal/object.pyi +93 -17
  96. modal/parallel_map.py +942 -129
  97. modal/parallel_map.pyi +294 -15
  98. modal/partial_function.py +0 -2
  99. modal/partial_function.pyi +234 -19
  100. modal/proxy.py +17 -8
  101. modal/proxy.pyi +36 -3
  102. modal/queue.py +270 -65
  103. modal/queue.pyi +817 -57
  104. modal/runner.py +115 -101
  105. modal/runner.pyi +205 -49
  106. modal/sandbox.py +512 -136
  107. modal/sandbox.pyi +845 -111
  108. modal/schedule.py +1 -1
  109. modal/secret.py +300 -70
  110. modal/secret.pyi +589 -34
  111. modal/serving.py +7 -11
  112. modal/serving.pyi +7 -8
  113. modal/snapshot.py +11 -8
  114. modal/snapshot.pyi +25 -4
  115. modal/token_flow.py +4 -4
  116. modal/token_flow.pyi +28 -8
  117. modal/volume.py +416 -158
  118. modal/volume.pyi +1117 -121
  119. {modal-1.0.3.dev10.dist-info → modal-1.2.3.dev7.dist-info}/METADATA +10 -9
  120. modal-1.2.3.dev7.dist-info/RECORD +195 -0
  121. modal_docs/mdmd/mdmd.py +17 -4
  122. modal_proto/api.proto +534 -79
  123. modal_proto/api_grpc.py +337 -1
  124. modal_proto/api_pb2.py +1522 -968
  125. modal_proto/api_pb2.pyi +1619 -134
  126. modal_proto/api_pb2_grpc.py +699 -4
  127. modal_proto/api_pb2_grpc.pyi +226 -14
  128. modal_proto/modal_api_grpc.py +175 -154
  129. modal_proto/sandbox_router.proto +145 -0
  130. modal_proto/sandbox_router_grpc.py +105 -0
  131. modal_proto/sandbox_router_pb2.py +149 -0
  132. modal_proto/sandbox_router_pb2.pyi +333 -0
  133. modal_proto/sandbox_router_pb2_grpc.py +203 -0
  134. modal_proto/sandbox_router_pb2_grpc.pyi +75 -0
  135. modal_proto/task_command_router.proto +144 -0
  136. modal_proto/task_command_router_grpc.py +105 -0
  137. modal_proto/task_command_router_pb2.py +149 -0
  138. modal_proto/task_command_router_pb2.pyi +333 -0
  139. modal_proto/task_command_router_pb2_grpc.py +203 -0
  140. modal_proto/task_command_router_pb2_grpc.pyi +75 -0
  141. modal_version/__init__.py +1 -1
  142. modal/requirements/PREVIEW.txt +0 -16
  143. modal/requirements/base-images.json +0 -26
  144. modal-1.0.3.dev10.dist-info/RECORD +0 -179
  145. modal_proto/modal_options_grpc.py +0 -3
  146. modal_proto/options.proto +0 -19
  147. modal_proto/options_grpc.py +0 -3
  148. modal_proto/options_pb2.py +0 -35
  149. modal_proto/options_pb2.pyi +0 -20
  150. modal_proto/options_pb2_grpc.py +0 -4
  151. modal_proto/options_pb2_grpc.pyi +0 -7
  152. /modal/{requirements → builder}/2023.12.312.txt +0 -0
  153. /modal/{requirements → builder}/2023.12.txt +0 -0
  154. /modal/{requirements → builder}/2024.04.txt +0 -0
  155. /modal/{requirements → builder}/2024.10.txt +0 -0
  156. /modal/{requirements → builder}/README.md +0 -0
  157. {modal-1.0.3.dev10.dist-info → modal-1.2.3.dev7.dist-info}/WHEEL +0 -0
  158. {modal-1.0.3.dev10.dist-info → modal-1.2.3.dev7.dist-info}/entry_points.txt +0 -0
  159. {modal-1.0.3.dev10.dist-info → modal-1.2.3.dev7.dist-info}/licenses/LICENSE +0 -0
  160. {modal-1.0.3.dev10.dist-info → modal-1.2.3.dev7.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,203 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+
5
+ from modal_proto import task_command_router_pb2 as modal__proto_dot_task__command__router__pb2
6
+
7
+
8
+ class TaskCommandRouterStub(object):
9
+ """Missing associated documentation comment in .proto file."""
10
+
11
+ def __init__(self, channel):
12
+ """Constructor.
13
+
14
+ Args:
15
+ channel: A grpc.Channel.
16
+ """
17
+ self.TaskExecPoll = channel.unary_unary(
18
+ '/modal.task_command_router.TaskCommandRouter/TaskExecPoll',
19
+ request_serializer=modal__proto_dot_task__command__router__pb2.TaskExecPollRequest.SerializeToString,
20
+ response_deserializer=modal__proto_dot_task__command__router__pb2.TaskExecPollResponse.FromString,
21
+ )
22
+ self.TaskExecStart = channel.unary_unary(
23
+ '/modal.task_command_router.TaskCommandRouter/TaskExecStart',
24
+ request_serializer=modal__proto_dot_task__command__router__pb2.TaskExecStartRequest.SerializeToString,
25
+ response_deserializer=modal__proto_dot_task__command__router__pb2.TaskExecStartResponse.FromString,
26
+ )
27
+ self.TaskExecStdinWrite = channel.unary_unary(
28
+ '/modal.task_command_router.TaskCommandRouter/TaskExecStdinWrite',
29
+ request_serializer=modal__proto_dot_task__command__router__pb2.TaskExecStdinWriteRequest.SerializeToString,
30
+ response_deserializer=modal__proto_dot_task__command__router__pb2.TaskExecStdinWriteResponse.FromString,
31
+ )
32
+ self.TaskExecStdioRead = channel.unary_stream(
33
+ '/modal.task_command_router.TaskCommandRouter/TaskExecStdioRead',
34
+ request_serializer=modal__proto_dot_task__command__router__pb2.TaskExecStdioReadRequest.SerializeToString,
35
+ response_deserializer=modal__proto_dot_task__command__router__pb2.TaskExecStdioReadResponse.FromString,
36
+ )
37
+ self.TaskExecWait = channel.unary_unary(
38
+ '/modal.task_command_router.TaskCommandRouter/TaskExecWait',
39
+ request_serializer=modal__proto_dot_task__command__router__pb2.TaskExecWaitRequest.SerializeToString,
40
+ response_deserializer=modal__proto_dot_task__command__router__pb2.TaskExecWaitResponse.FromString,
41
+ )
42
+
43
+
44
+ class TaskCommandRouterServicer(object):
45
+ """Missing associated documentation comment in .proto file."""
46
+
47
+ def TaskExecPoll(self, request, context):
48
+ """Poll for the exit status of an exec'd command.
49
+ """
50
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
51
+ context.set_details('Method not implemented!')
52
+ raise NotImplementedError('Method not implemented!')
53
+
54
+ def TaskExecStart(self, request, context):
55
+ """Execute a command in the task.
56
+ """
57
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
58
+ context.set_details('Method not implemented!')
59
+ raise NotImplementedError('Method not implemented!')
60
+
61
+ def TaskExecStdinWrite(self, request, context):
62
+ """Write to the stdin stream of an exec'd command.
63
+ """
64
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
65
+ context.set_details('Method not implemented!')
66
+ raise NotImplementedError('Method not implemented!')
67
+
68
+ def TaskExecStdioRead(self, request, context):
69
+ """Get a stream of output from the stdout or stderr stream of an exec'd command.
70
+ """
71
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
72
+ context.set_details('Method not implemented!')
73
+ raise NotImplementedError('Method not implemented!')
74
+
75
+ def TaskExecWait(self, request, context):
76
+ """Wait for an exec'd command to exit and return the exit code.
77
+ """
78
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
79
+ context.set_details('Method not implemented!')
80
+ raise NotImplementedError('Method not implemented!')
81
+
82
+
83
+ def add_TaskCommandRouterServicer_to_server(servicer, server):
84
+ rpc_method_handlers = {
85
+ 'TaskExecPoll': grpc.unary_unary_rpc_method_handler(
86
+ servicer.TaskExecPoll,
87
+ request_deserializer=modal__proto_dot_task__command__router__pb2.TaskExecPollRequest.FromString,
88
+ response_serializer=modal__proto_dot_task__command__router__pb2.TaskExecPollResponse.SerializeToString,
89
+ ),
90
+ 'TaskExecStart': grpc.unary_unary_rpc_method_handler(
91
+ servicer.TaskExecStart,
92
+ request_deserializer=modal__proto_dot_task__command__router__pb2.TaskExecStartRequest.FromString,
93
+ response_serializer=modal__proto_dot_task__command__router__pb2.TaskExecStartResponse.SerializeToString,
94
+ ),
95
+ 'TaskExecStdinWrite': grpc.unary_unary_rpc_method_handler(
96
+ servicer.TaskExecStdinWrite,
97
+ request_deserializer=modal__proto_dot_task__command__router__pb2.TaskExecStdinWriteRequest.FromString,
98
+ response_serializer=modal__proto_dot_task__command__router__pb2.TaskExecStdinWriteResponse.SerializeToString,
99
+ ),
100
+ 'TaskExecStdioRead': grpc.unary_stream_rpc_method_handler(
101
+ servicer.TaskExecStdioRead,
102
+ request_deserializer=modal__proto_dot_task__command__router__pb2.TaskExecStdioReadRequest.FromString,
103
+ response_serializer=modal__proto_dot_task__command__router__pb2.TaskExecStdioReadResponse.SerializeToString,
104
+ ),
105
+ 'TaskExecWait': grpc.unary_unary_rpc_method_handler(
106
+ servicer.TaskExecWait,
107
+ request_deserializer=modal__proto_dot_task__command__router__pb2.TaskExecWaitRequest.FromString,
108
+ response_serializer=modal__proto_dot_task__command__router__pb2.TaskExecWaitResponse.SerializeToString,
109
+ ),
110
+ }
111
+ generic_handler = grpc.method_handlers_generic_handler(
112
+ 'modal.task_command_router.TaskCommandRouter', rpc_method_handlers)
113
+ server.add_generic_rpc_handlers((generic_handler,))
114
+
115
+
116
+ # This class is part of an EXPERIMENTAL API.
117
+ class TaskCommandRouter(object):
118
+ """Missing associated documentation comment in .proto file."""
119
+
120
+ @staticmethod
121
+ def TaskExecPoll(request,
122
+ target,
123
+ options=(),
124
+ channel_credentials=None,
125
+ call_credentials=None,
126
+ insecure=False,
127
+ compression=None,
128
+ wait_for_ready=None,
129
+ timeout=None,
130
+ metadata=None):
131
+ return grpc.experimental.unary_unary(request, target, '/modal.task_command_router.TaskCommandRouter/TaskExecPoll',
132
+ modal__proto_dot_task__command__router__pb2.TaskExecPollRequest.SerializeToString,
133
+ modal__proto_dot_task__command__router__pb2.TaskExecPollResponse.FromString,
134
+ options, channel_credentials,
135
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
136
+
137
+ @staticmethod
138
+ def TaskExecStart(request,
139
+ target,
140
+ options=(),
141
+ channel_credentials=None,
142
+ call_credentials=None,
143
+ insecure=False,
144
+ compression=None,
145
+ wait_for_ready=None,
146
+ timeout=None,
147
+ metadata=None):
148
+ return grpc.experimental.unary_unary(request, target, '/modal.task_command_router.TaskCommandRouter/TaskExecStart',
149
+ modal__proto_dot_task__command__router__pb2.TaskExecStartRequest.SerializeToString,
150
+ modal__proto_dot_task__command__router__pb2.TaskExecStartResponse.FromString,
151
+ options, channel_credentials,
152
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
153
+
154
+ @staticmethod
155
+ def TaskExecStdinWrite(request,
156
+ target,
157
+ options=(),
158
+ channel_credentials=None,
159
+ call_credentials=None,
160
+ insecure=False,
161
+ compression=None,
162
+ wait_for_ready=None,
163
+ timeout=None,
164
+ metadata=None):
165
+ return grpc.experimental.unary_unary(request, target, '/modal.task_command_router.TaskCommandRouter/TaskExecStdinWrite',
166
+ modal__proto_dot_task__command__router__pb2.TaskExecStdinWriteRequest.SerializeToString,
167
+ modal__proto_dot_task__command__router__pb2.TaskExecStdinWriteResponse.FromString,
168
+ options, channel_credentials,
169
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
170
+
171
+ @staticmethod
172
+ def TaskExecStdioRead(request,
173
+ target,
174
+ options=(),
175
+ channel_credentials=None,
176
+ call_credentials=None,
177
+ insecure=False,
178
+ compression=None,
179
+ wait_for_ready=None,
180
+ timeout=None,
181
+ metadata=None):
182
+ return grpc.experimental.unary_stream(request, target, '/modal.task_command_router.TaskCommandRouter/TaskExecStdioRead',
183
+ modal__proto_dot_task__command__router__pb2.TaskExecStdioReadRequest.SerializeToString,
184
+ modal__proto_dot_task__command__router__pb2.TaskExecStdioReadResponse.FromString,
185
+ options, channel_credentials,
186
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
187
+
188
+ @staticmethod
189
+ def TaskExecWait(request,
190
+ target,
191
+ options=(),
192
+ channel_credentials=None,
193
+ call_credentials=None,
194
+ insecure=False,
195
+ compression=None,
196
+ wait_for_ready=None,
197
+ timeout=None,
198
+ metadata=None):
199
+ return grpc.experimental.unary_unary(request, target, '/modal.task_command_router.TaskCommandRouter/TaskExecWait',
200
+ modal__proto_dot_task__command__router__pb2.TaskExecWaitRequest.SerializeToString,
201
+ modal__proto_dot_task__command__router__pb2.TaskExecWaitResponse.FromString,
202
+ options, channel_credentials,
203
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
@@ -0,0 +1,75 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+ import abc
6
+ import collections.abc
7
+ import grpc
8
+ import modal_proto.task_command_router_pb2
9
+
10
+ class TaskCommandRouterStub:
11
+ def __init__(self, channel: grpc.Channel) -> None: ...
12
+ TaskExecPoll: grpc.UnaryUnaryMultiCallable[
13
+ modal_proto.task_command_router_pb2.TaskExecPollRequest,
14
+ modal_proto.task_command_router_pb2.TaskExecPollResponse,
15
+ ]
16
+ """Poll for the exit status of an exec'd command."""
17
+ TaskExecStart: grpc.UnaryUnaryMultiCallable[
18
+ modal_proto.task_command_router_pb2.TaskExecStartRequest,
19
+ modal_proto.task_command_router_pb2.TaskExecStartResponse,
20
+ ]
21
+ """Execute a command in the task."""
22
+ TaskExecStdinWrite: grpc.UnaryUnaryMultiCallable[
23
+ modal_proto.task_command_router_pb2.TaskExecStdinWriteRequest,
24
+ modal_proto.task_command_router_pb2.TaskExecStdinWriteResponse,
25
+ ]
26
+ """Write to the stdin stream of an exec'd command."""
27
+ TaskExecStdioRead: grpc.UnaryStreamMultiCallable[
28
+ modal_proto.task_command_router_pb2.TaskExecStdioReadRequest,
29
+ modal_proto.task_command_router_pb2.TaskExecStdioReadResponse,
30
+ ]
31
+ """Get a stream of output from the stdout or stderr stream of an exec'd command."""
32
+ TaskExecWait: grpc.UnaryUnaryMultiCallable[
33
+ modal_proto.task_command_router_pb2.TaskExecWaitRequest,
34
+ modal_proto.task_command_router_pb2.TaskExecWaitResponse,
35
+ ]
36
+ """Wait for an exec'd command to exit and return the exit code."""
37
+
38
+ class TaskCommandRouterServicer(metaclass=abc.ABCMeta):
39
+ @abc.abstractmethod
40
+ def TaskExecPoll(
41
+ self,
42
+ request: modal_proto.task_command_router_pb2.TaskExecPollRequest,
43
+ context: grpc.ServicerContext,
44
+ ) -> modal_proto.task_command_router_pb2.TaskExecPollResponse:
45
+ """Poll for the exit status of an exec'd command."""
46
+ @abc.abstractmethod
47
+ def TaskExecStart(
48
+ self,
49
+ request: modal_proto.task_command_router_pb2.TaskExecStartRequest,
50
+ context: grpc.ServicerContext,
51
+ ) -> modal_proto.task_command_router_pb2.TaskExecStartResponse:
52
+ """Execute a command in the task."""
53
+ @abc.abstractmethod
54
+ def TaskExecStdinWrite(
55
+ self,
56
+ request: modal_proto.task_command_router_pb2.TaskExecStdinWriteRequest,
57
+ context: grpc.ServicerContext,
58
+ ) -> modal_proto.task_command_router_pb2.TaskExecStdinWriteResponse:
59
+ """Write to the stdin stream of an exec'd command."""
60
+ @abc.abstractmethod
61
+ def TaskExecStdioRead(
62
+ self,
63
+ request: modal_proto.task_command_router_pb2.TaskExecStdioReadRequest,
64
+ context: grpc.ServicerContext,
65
+ ) -> collections.abc.Iterator[modal_proto.task_command_router_pb2.TaskExecStdioReadResponse]:
66
+ """Get a stream of output from the stdout or stderr stream of an exec'd command."""
67
+ @abc.abstractmethod
68
+ def TaskExecWait(
69
+ self,
70
+ request: modal_proto.task_command_router_pb2.TaskExecWaitRequest,
71
+ context: grpc.ServicerContext,
72
+ ) -> modal_proto.task_command_router_pb2.TaskExecWaitResponse:
73
+ """Wait for an exec'd command to exit and return the exit code."""
74
+
75
+ def add_TaskCommandRouterServicer_to_server(servicer: TaskCommandRouterServicer, server: grpc.Server) -> None: ...
modal_version/__init__.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # Copyright Modal Labs 2025
2
2
  """Supplies the current version of the modal client library."""
3
3
 
4
- __version__ = "1.0.3.dev10"
4
+ __version__ = "1.2.3.dev7"
@@ -1,16 +0,0 @@
1
- aiohappyeyeballs==2.4.3
2
- aiohttp==3.10.8
3
- aiosignal==1.3.1
4
- async-timeout==4.0.3 ; python_version < "3.11"
5
- attrs==24.2.0
6
- certifi==2024.8.30
7
- frozenlist==1.4.1
8
- grpclib==0.4.7
9
- h2==4.1.0
10
- hpack==4.0.0
11
- hyperframe==6.0.1
12
- idna==3.10
13
- multidict==6.1.0
14
- protobuf>=3.20,<6
15
- typing_extensions==4.12.2
16
- yarl==1.13.1
@@ -1,26 +0,0 @@
1
- {
2
- "debian": {
3
- "PREVIEW": "bookworm",
4
- "2024.10": "bookworm",
5
- "2024.04": "bookworm",
6
- "2023.12": "bullseye"
7
- },
8
- "python": {
9
- "PREVIEW": ["3.9.20", "3.10.15", "3.11.10", "3.12.6", "3.13.0"],
10
- "2024.10": ["3.9.20", "3.10.15", "3.11.10", "3.12.6", "3.13.0"],
11
- "2024.04": ["3.9.19", "3.10.14", "3.11.8", "3.12.2"],
12
- "2023.12": ["3.9.15", "3.10.8", "3.11.0", "3.12.1"]
13
- },
14
- "micromamba": {
15
- "PREVIEW": "1.5.10",
16
- "2024.10": "1.5.10",
17
- "2024.04": "1.5.8",
18
- "2023.12": "1.3.1"
19
- },
20
- "package_tools": {
21
- "PREVIEW": "pip wheel uv",
22
- "2024.10": "pip wheel uv",
23
- "2024.04": "pip wheel uv",
24
- "2023.12": "pip"
25
- }
26
- }
@@ -1,179 +0,0 @@
1
- modal/__init__.py,sha256=1131svUxi876UMFC6Z68qe5Z031ZfZ9NrduvGwHphj8,2710
2
- modal/__main__.py,sha256=sTJcc9EbDuCKSwg3tL6ZckFw9WWdlkXW8mId1IvJCNc,2846
3
- modal/_clustered_functions.py,sha256=kTf-9YBXY88NutC1akI-gCbvf01RhMPCw-zoOI_YIUE,2700
4
- modal/_clustered_functions.pyi,sha256=2aWxN2v5WUnj-R-sk6BzJ-3AvggkQGQjwhtvbDH3pds,777
5
- modal/_container_entrypoint.py,sha256=2Zx9O_EMJg0H77EdnC2vGKs6uFMWwbP1NLFf-qYmWmU,28962
6
- modal/_functions.py,sha256=4UDJaBh5S0A24V5-whnzQGamXxGbKZAk2HWc7jH3rAY,78955
7
- modal/_ipython.py,sha256=TW1fkVOmZL3YYqdS2YlM1hqpf654Yf8ZyybHdBnlhSw,301
8
- modal/_location.py,sha256=joiX-0ZeutEUDTrrqLF1GHXCdVLF-rHzstocbMcd_-k,366
9
- modal/_object.py,sha256=KzzzZoM41UQUiY9TKOrft9BtZKgjWG_ukdlyLGjB4UY,10758
10
- modal/_output.py,sha256=LRM9KroHuR7t5pq8iLYjpFz1sQrHYan2kvRDjT6KAw4,26082
11
- modal/_partial_function.py,sha256=wzUo_p8arngumPkM5sNIrZ2DluqJl-Z6w5Ds1jHGlyw,39151
12
- modal/_pty.py,sha256=JZfPDDpzqICZqtyPI_oMJf_9w-p_lLNuzHhwhodUXio,1329
13
- modal/_resolver.py,sha256=-nolqj_p_mx5czVYj1Mazh2IQWpSMrTOGughVJqYfo8,7579
14
- modal/_resources.py,sha256=NMAp0GCLutiZI4GuKSIVnRHVlstoD3hNGUabjTUtzf4,1794
15
- modal/_serialization.py,sha256=iiD1SnSyEYRmZiVCaaWKJC87CamV-rqnyqs91XUjqoo,22971
16
- modal/_traceback.py,sha256=IZQzB3fVlUfMHOSyKUgw0H6qv4yHnpyq-XVCNZKfUdA,5023
17
- modal/_tunnel.py,sha256=zTBxBiuH1O22tS1OliAJdIsSmaZS8PlnifS_6S5z-mk,6320
18
- modal/_tunnel.pyi,sha256=a4Ea0RQ5jaJB0A4LH9FANGB44ObqkHHGVDV4RwtokzU,1251
19
- modal/_type_manager.py,sha256=DWjgmjYJuOagw2erin506UUbG2H5UzZCFEekS-7hmfA,9087
20
- modal/_watcher.py,sha256=K6LYnlmSGQB4tWWI9JADv-tvSvQ1j522FwT71B51CX8,3584
21
- modal/app.py,sha256=NZ_rJ9TuMfiNiLg8-gOFgufD5flGtXWPHOZI0gdD3hE,46585
22
- modal/app.pyi,sha256=4-b_vbe3lNAqQPcMRpQCEDsE1zsVkQRJGUql9B7HvbM,22659
23
- modal/call_graph.py,sha256=1g2DGcMIJvRy-xKicuf63IVE98gJSnQsr8R_NVMptNc,2581
24
- modal/client.py,sha256=OwISJvkgMb-rHm9Gc4i-7YcDgGiZgwJ7F_PzwZH7a6Q,16847
25
- modal/client.pyi,sha256=rTH-MVJfJ4vb8MxMw0S7TY-WHYUE-Nx-pguORk3Mcpo,8459
26
- modal/cloud_bucket_mount.py,sha256=YOe9nnvSr4ZbeCn587d7_VhE9IioZYRvF9VYQTQux08,5914
27
- modal/cloud_bucket_mount.pyi,sha256=30T3K1a89l6wzmEJ_J9iWv9SknoGqaZDx59Xs-ZQcmk,1607
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
- modal/dict.pyi,sha256=RBaQyOd1ABRNN7vIf5L_rv94y7Kq5Qn9IlKHSr4j8N0,8120
35
- modal/environments.py,sha256=gHFNLG78bqgizpQ4w_elz27QOqmcgAonFsmLs7NjUJ4,6804
36
- modal/environments.pyi,sha256=4HbI0kywveaUVI7HqDtZ4HphCTGXYi_wie2hz87up5A,3425
37
- modal/exception.py,sha256=2pgq-j8JP-tB3yU2VmYOzn9CsynU9_h8IU_MgqgKegM,5352
38
- modal/file_io.py,sha256=lcMs_E9Xfm0YX1t9U2wNIBPnqHRxmImqjLW1GHqVmyg,20945
39
- modal/file_io.pyi,sha256=oB7x-rKq7bmm8cA7Z7W9C9yeko7KK9m9i5GidFnkGK4,9569
40
- modal/file_pattern_matcher.py,sha256=wov-otB5M1oTdrYDtR2_VgacYin2srdtAP4McA1Cqzw,6516
41
- modal/functions.py,sha256=kcNHvqeGBxPI7Cgd57NIBBghkfbeFJzXO44WW0jSmao,325
42
- modal/functions.pyi,sha256=5T58OucdNU4I-LqhBdwsWSAGka-Wa8nP2GcZ5K1bOL0,16236
43
- modal/gpu.py,sha256=Kbhs_u49FaC2Zi0TjCdrpstpRtT5eZgecynmQi5IZVE,6752
44
- modal/image.py,sha256=yrI9DCw7GAck3d788GCHJom-_yU55zNu7reNapBhlgE,93284
45
- modal/image.pyi,sha256=2xjB6XOZDtm_chDdd90UoIj8pnDt5hCg6bOmu5fNaA4,25625
46
- modal/io_streams.py,sha256=YDZVQSDv05DeXg5TwcucC9Rj5hQBx2GXdluan9rIUpw,15467
47
- modal/io_streams.pyi,sha256=1UK6kWLREASQfq-wL9wSp5iqjLU0egRZPDn4LXs1PZY,5136
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
- modal/network_file_system.pyi,sha256=58DiUqHGlARmI3cz-Yo7IFObKKFIiGh5UIU5JxGNFfc,8333
52
- modal/object.py,sha256=bTeskuY8JFrESjU4_UL_nTwYlBQdOLmVaOX3X6EMxsg,164
53
- modal/object.pyi,sha256=UkR8NQ1jCIaw3hBUPxBRc6vvrOqtV37G_hsW2O5-4wE,5378
54
- modal/output.py,sha256=q4T9uHduunj4NwY-YSwkHGgjZlCXMuJbfQ5UFaAGRAc,1968
55
- modal/parallel_map.py,sha256=zU2zL8_9PmmNC9Ny2GB7K2_HbAdPU7RiVLN0GtzaDls,35923
56
- modal/parallel_map.pyi,sha256=mhYGQmufQEJbjNrX7vNhBS2gUdfBrpmuWNUHth_Dz6U,6140
57
- modal/partial_function.py,sha256=SwuAAj2wj4SO6F6nkSnwNZrczEmm9w9YdlQTHh6hr04,1195
58
- modal/partial_function.pyi,sha256=NFWz1aCAs2B3-GnPf1cTatWRZOLnYpFKCnjP_X9iNRs,6411
59
- modal/proxy.py,sha256=XEjIHzZvbD3UW4YWyDzbDuNFq6hDUxyPPxupl2qwULY,1429
60
- modal/proxy.pyi,sha256=FTTK1g3La8oLf0oXWeoTp1jMVKghzN_2UmESJoLvsn0,396
61
- modal/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
62
- modal/queue.py,sha256=lu-QYW8GTqhZgX0TPTndmltT9uIWgLFV5mKZ_yTfmd4,18829
63
- modal/queue.pyi,sha256=O0f0S5kM1P0GVgzUzgsN0XsI46B9cJem4kkWluFndjM,10632
64
- modal/retries.py,sha256=IvNLDM0f_GLUDD5VgEDoN09C88yoxSrCquinAuxT1Sc,5205
65
- modal/runner.py,sha256=nvpnU7U2O5d2WqME1QUTTwu-NkSLLwblytlGk7HXPAw,24152
66
- modal/runner.pyi,sha256=1AnEu48SUPnLWp3raQ2zJCV5lc85EGLkX2nL0bHWaB0,5162
67
- modal/running_app.py,sha256=v61mapYNV1-O-Uaho5EfJlryMLvIT9We0amUOSvSGx8,1188
68
- modal/sandbox.py,sha256=OGNgK4l7iuO-p3kC0bwj7Ehh-Qm2m-Odj0iWOpQb-1I,35697
69
- modal/sandbox.pyi,sha256=hTAnOmXyGZOaUjjqiKfc6B_uU93N1Uxwj_D-o7qwbbY,28240
70
- modal/schedule.py,sha256=SdH8jk6S0zoc1bTRVblrVw0zBsNwPlSC2gNpVxMet9g,3061
71
- modal/scheduler_placement.py,sha256=BAREdOY5HzHpzSBqt6jDVR6YC_jYfHMVqOzkyqQfngU,1235
72
- modal/secret.py,sha256=I2z-rgKWl_Ix107d2_Y2OWGXdFOuJ7zMOyDfIOdFI1A,10374
73
- modal/secret.pyi,sha256=NY_dz0UjiYyn4u4LaBZwPP3Ji7SlTLpEyzrYK2sj9HQ,3103
74
- modal/serving.py,sha256=3I3WBeVbzZY258u9PXBCW_dZBgypq3OhwBuTVvlgubE,4423
75
- modal/serving.pyi,sha256=YfixTaWikyYpwhnNxCHMZnDDQiPmV1xJ87QF91U_WGU,1924
76
- modal/snapshot.py,sha256=E3oxYQkYVRB_LeFBfmUV1Y6vHz8-azXJfC4x7A1QKnI,1455
77
- modal/snapshot.pyi,sha256=dIEBdTPb7O3VwkQ8TMPjfyU17RLuS9i0DnACxxHy8X4,676
78
- modal/stream_type.py,sha256=A6320qoAAWhEfwOCZfGtymQTu5AfLfJXXgARqooTPvY,417
79
- modal/token_flow.py,sha256=0_4KabXKsuE4OXTJ1OuLOtA-b1sesShztMZkkRFK7tA,7605
80
- modal/token_flow.pyi,sha256=ILbRv6JsZq-jK8jcJM7eB74e0PsbzwBm7hyPcV9lBlQ,2121
81
- modal/volume.py,sha256=XtOxzvdTJ3H7BEldl5Puj6vvXucev0i6KWI5tgkXe7I,44120
82
- modal/volume.pyi,sha256=YZqC3-z4bfiTgb1-uO7XylrONvIsHQUZd9pqW_Wxd48,21145
83
- modal/_runtime/__init__.py,sha256=MIEP8jhXUeGq_eCjYFcqN5b1bxBM4fdk0VESpjWR0fc,28
84
- modal/_runtime/asgi.py,sha256=_2xSTsDD27Cit7xnMs4lzkJA2wzer2_N4Oa3BkXFzVA,22521
85
- modal/_runtime/container_io_manager.py,sha256=6j0jO2-s9ShckM4SK45OapoQxWW9HQwQjFaBkXPJPwU,44763
86
- modal/_runtime/container_io_manager.pyi,sha256=OKvrccBxawjF0PHZuN5eXeh266fS7qZH8yAIG0P02cY,16349
87
- modal/_runtime/execution_context.py,sha256=73Y5zH_o-MhVCrkJXakYVlFkKqCa2CWvqoHjOfJrJGg,3034
88
- modal/_runtime/execution_context.pyi,sha256=AlRGyocfQlb4UpEuI_VmRRtvaBTbhjgyKSRFUePi8J0,667
89
- modal/_runtime/gpu_memory_snapshot.py,sha256=tA3m1d1cwnmHpvpCeN_WijDd6n8byn7LWlpicbIxiOI,3144
90
- modal/_runtime/telemetry.py,sha256=T1RoAGyjBDr1swiM6pPsGRSITm7LI5FDK18oNXxY08U,5163
91
- modal/_runtime/user_code_imports.py,sha256=78wJyleqY2RVibqcpbDQyfWVBVT9BjyHPeoV9WdwV5Y,17720
92
- modal/_utils/__init__.py,sha256=waLjl5c6IPDhSsdWAm9Bji4e2PVxamYABKAze6CHVXY,28
93
- modal/_utils/app_utils.py,sha256=88BT4TPLWfYAQwKTHcyzNQRHg8n9B-QE2UyJs96iV-0,108
94
- modal/_utils/async_utils.py,sha256=zjdtdA54zvNL_RuREmN5NWFhhiRcNh8z0jT2rBc5RgY,28001
95
- modal/_utils/blob_utils.py,sha256=IexC2Jbtqp_Tkmy62ayfgzTYte0UPCNufB_v-DO21g8,18585
96
- modal/_utils/bytes_io_segment_payload.py,sha256=vaXPq8b52-x6G2hwE7SrjS58pg_aRm7gV3bn3yjmTzQ,4261
97
- modal/_utils/deprecation.py,sha256=EXP1beU4pmEqEzWMLw6E3kUfNfpmNA_VOp6i0EHi93g,4856
98
- modal/_utils/docker_utils.py,sha256=h1uETghR40mp_y3fSWuZAfbIASH1HMzuphJHghAL6DU,3722
99
- modal/_utils/function_utils.py,sha256=bhrjyOHPPXm6fAyJx3bzI1Yh56j6xh8eeMSFKdAWrHQ,26978
100
- modal/_utils/git_utils.py,sha256=qtUU6JAttF55ZxYq51y55OR58B0tDPZsZWK5dJe6W5g,3182
101
- modal/_utils/grpc_testing.py,sha256=H1zHqthv19eGPJz2HKXDyWXWGSqO4BRsxah3L5Xaa8A,8619
102
- modal/_utils/grpc_utils.py,sha256=xSFosSJYQ4m6cH9WtChcSXqsnyk6DMeVvOHI4N3914g,10922
103
- modal/_utils/hash_utils.py,sha256=zg3J6OGxTFGSFri1qQ12giDz90lWk8bzaxCTUCRtiX4,3034
104
- modal/_utils/http_utils.py,sha256=yeTFsXYr0rYMEhB7vBP7audG9Uc7OLhzKBANFDZWVt0,2451
105
- modal/_utils/jwt_utils.py,sha256=fxH9plyrbAemTbjSsQtzIdDXE9QXxvMC4DiUZ16G0aA,1360
106
- modal/_utils/logger.py,sha256=NgbMKFT9chYYt_TU01DdIior5ByYr2gZtrWIk1SFRLc,1782
107
- modal/_utils/mount_utils.py,sha256=gGCgIlWwYiJbUtgFY2GJcWYismYvazbMAeUOgf7NhFQ,3205
108
- modal/_utils/name_utils.py,sha256=TW1iyJedvDNPEJ5UVp93u8xuD5J2gQL_CUt1mgov_aI,1939
109
- modal/_utils/package_utils.py,sha256=LcL2olGN4xaUzu2Tbv-C-Ft9Qp6bsLxEfETOAVd-mjU,2073
110
- modal/_utils/pattern_utils.py,sha256=ZUffaECfe2iYBhH6cvCB-0-UWhmEBTZEl_TwG_So3ag,6714
111
- modal/_utils/rand_pb_testing.py,sha256=mmVPk1rZldHwHZx0DnHTuHQlRLAiiAYdxjwEJpxvT9c,3900
112
- modal/_utils/shell_utils.py,sha256=hWHzv730Br2Xyj6cGPiMZ-198Z3RZuOu3pDXhFSZ22c,2157
113
- modal/_utils/time_utils.py,sha256=THhRz59gez8jNV1B_eNS2gJJVPPGQSFVlr1esBGQoqg,494
114
- modal/_vendor/__init__.py,sha256=MIEP8jhXUeGq_eCjYFcqN5b1bxBM4fdk0VESpjWR0fc,28
115
- modal/_vendor/a2wsgi_wsgi.py,sha256=Q1AsjpV_Q_vzQsz_cSqmP9jWzsGsB-ARFU6vpQYml8k,21878
116
- modal/_vendor/cloudpickle.py,sha256=avxOIgNKqL9KyPNuIOVQzBm0D1l9ipeB4RrcUMUGmeQ,55216
117
- modal/_vendor/tblib.py,sha256=g1O7QUDd3sDoLd8YPFltkXkih7r_fyZOjgmGuligv3s,9722
118
- modal/cli/__init__.py,sha256=6FRleWQxBDT19y7OayO4lBOzuL6Bs9r0rLINYYYbHwQ,769
119
- modal/cli/_download.py,sha256=tV8JFkncTtQKh85bSguQg6AW5aRRlynf-rvyN7ruigc,4337
120
- modal/cli/_traceback.py,sha256=4ywtmFcmPnY3tqb4-3fA061N2tRiM01xs8fSagtkwhE,7293
121
- modal/cli/app.py,sha256=Q4yoPGuNqdWMwIIbjJQflp9RvmgNQQRWBNhCg_Cvi9g,7800
122
- modal/cli/cluster.py,sha256=nmG3flRs_1VKgJ1Q6nHnt_WpuWDWkGp2He8wA9HeGsQ,3141
123
- modal/cli/config.py,sha256=QvFsqO4eUOtI7d_pQAOAyfq_ZitjhPtav3C6GIDQcZM,1680
124
- modal/cli/container.py,sha256=mRYRCGsP6DiWzm3Az4W5Fcc5Tbl58zOIc62HDzS9TvQ,3703
125
- modal/cli/dict.py,sha256=012PvKz9YbooE122tWQTcsb9a4lpw5O38DoFNhykcPM,4628
126
- modal/cli/entry_point.py,sha256=Ytpsy0MTLQC1RSClI0wNhCbiy6ecPO8555PMmsrxoSc,4377
127
- modal/cli/environment.py,sha256=Ayddkiq9jdj3XYDJ8ZmUqFpPPH8xajYlbexRkzGtUcg,4334
128
- modal/cli/import_refs.py,sha256=pmzY0hpexx6DtvobNmCOvRqEdS9IriEP4BpMw1TIy2w,13911
129
- modal/cli/launch.py,sha256=0_sBu6bv2xJEPWi-rbGS6Ri9ggnkWQvrGlgpYSUBMyY,3097
130
- modal/cli/network_file_system.py,sha256=DoIdY8I42DjFdTtaYuRKNm7GC6vY0QtA4mk6694fbuU,7983
131
- modal/cli/profile.py,sha256=0TYhgRSGUvQZ5LH9nkl6iZllEvAjDniES264dE57wOM,3201
132
- modal/cli/queues.py,sha256=1OzC9HdCkbNz6twF3US4FZmIhuVRQ01GOfBY42ux61A,4533
133
- modal/cli/run.py,sha256=DPa-yQ9o7vjqwvs_TAOvVJxS51yVn__ZGCnbkORL37g,23972
134
- modal/cli/secret.py,sha256=2bngl3Gb6THXkQ2eWZIN9pOHeOFJqiSNo_waUCVYgns,6611
135
- modal/cli/token.py,sha256=mxSgOWakXG6N71hQb1ko61XAR9ZGkTMZD-Txn7gmTac,1924
136
- modal/cli/utils.py,sha256=9Q7DIUX78-c19zBQNA7EtkgqIFatvHWUVGHwUIeBX_0,3366
137
- modal/cli/volume.py,sha256=h0Lk4CWe37L8X1kOpCj_KXfGGCEZf799fkX6Tbd6BPg,10734
138
- modal/cli/programs/__init__.py,sha256=svYKtV8HDwDCN86zbdWqyq5T8sMdGDj0PVlzc2tIxDM,28
139
- modal/cli/programs/run_jupyter.py,sha256=44Lpvqk2l3hH-uOkmAOzw60NEsfB5uaRDWDKVshvQhs,2682
140
- modal/cli/programs/vscode.py,sha256=KbTAaIXyQBVCDXxXjmBHmKpgXkUw0q4R4KkJvUjCYgk,3380
141
- modal/experimental/__init__.py,sha256=GYWLyYHpO0xWxo1s-uP5ZuD8IBFKbhCUAke3kq3jv_4,8272
142
- modal/experimental/ipython.py,sha256=epLUZeDSdE226TH_tU3igRKCiVuQi99mUOrIJ4SemOE,2792
143
- modal/requirements/2023.12.312.txt,sha256=zWWUVgVQ92GXBKNYYr2-5vn9rlnXcmkqlwlX5u1eTYw,400
144
- modal/requirements/2023.12.txt,sha256=OjsbXFkCSdkzzryZP82Q73osr5wxQ6EUzmGcK7twfkA,502
145
- modal/requirements/2024.04.txt,sha256=6NnrbIE-mflwMyKyQ0tsWeY8XFE1kSW9oE8DVDoD8QU,544
146
- modal/requirements/2024.10.txt,sha256=qD-5cVIVM9wXesJ6JC89Ew-3m2KjEElUz3jaw_MddRo,296
147
- modal/requirements/PREVIEW.txt,sha256=qD-5cVIVM9wXesJ6JC89Ew-3m2KjEElUz3jaw_MddRo,296
148
- modal/requirements/README.md,sha256=9tK76KP0Uph7O0M5oUgsSwEZDj5y-dcUPsnpR0Sc-Ik,854
149
- modal/requirements/base-images.json,sha256=57vMSqzMbLBxw5tFWSaMiIkkVEps4JfX5PAtXGnkS4U,740
150
- modal-1.0.3.dev10.dist-info/licenses/LICENSE,sha256=psuoW8kuDP96RQsdhzwOqi6fyWv0ct8CR6Jr7He_P_k,10173
151
- modal_docs/__init__.py,sha256=svYKtV8HDwDCN86zbdWqyq5T8sMdGDj0PVlzc2tIxDM,28
152
- modal_docs/gen_cli_docs.py,sha256=c1yfBS_x--gL5bs0N4ihMwqwX8l3IBWSkBAKNNIi6bQ,3801
153
- modal_docs/gen_reference_docs.py,sha256=d_CQUGQ0rfw28u75I2mov9AlS773z9rG40-yq5o7g2U,6359
154
- modal_docs/mdmd/__init__.py,sha256=svYKtV8HDwDCN86zbdWqyq5T8sMdGDj0PVlzc2tIxDM,28
155
- modal_docs/mdmd/mdmd.py,sha256=Irx49MCCTlBOP4FBdLR--JrpA3-WhsVeriq0LGgsRic,6232
156
- modal_docs/mdmd/signatures.py,sha256=XJaZrK7Mdepk5fdX51A8uENiLFNil85Ud0d4MH8H5f0,3218
157
- modal_proto/__init__.py,sha256=MIEP8jhXUeGq_eCjYFcqN5b1bxBM4fdk0VESpjWR0fc,28
158
- modal_proto/api.proto,sha256=cFwfgxiiDi7r_Q2JnUzuV619niivJXUel5y3v4ppxqw,96086
159
- modal_proto/api_grpc.py,sha256=iY5o_Tm4VDP-Wa1JgA_NpQa_Y-4FYB_RN9wdSUExjwI,117469
160
- modal_proto/api_pb2.py,sha256=C0eUCmX2r7X7UgXkNkK30zA8GqQE9JgzShaJz_eay8Q,338564
161
- modal_proto/api_pb2.pyi,sha256=eH2uxvTTpbyooY6sN7mVDipJcUHjooBAvTMK_TwZGzE,463394
162
- modal_proto/api_pb2_grpc.py,sha256=NL5prOS_hh_pA1hVvQP_ZRE1w49N-PR8iNPRZ65i6nA,254089
163
- modal_proto/api_pb2_grpc.pyi,sha256=Xxgdcnv1mBnu5_AQxJ6fo0yz7GnqVU0HVObNfZWHVfM,59440
164
- modal_proto/modal_api_grpc.py,sha256=0ir2lnwT3-IgPcAWw98yWMAiqZPkjvNro9UBk4u8hnk,17763
165
- modal_proto/modal_options_grpc.py,sha256=qJ1cuwA54oRqrdTyPTbvfhFZYd9HhJKK5UCwt523r3Y,120
166
- modal_proto/options.proto,sha256=zp9h5r61ivsp0XwEWwNBsVqNTbRA1VSY_UtN7sEcHtE,549
167
- modal_proto/options_grpc.py,sha256=M18X3d-8F_cNYSVM3I25dUTO5rZ0rd-vCCfynfh13Nc,125
168
- modal_proto/options_pb2.py,sha256=sD482Yqmy3kpyVpg7Yy55j7nHeQlmLpveQPP1npM5b4,1944
169
- modal_proto/options_pb2.pyi,sha256=l7DBrbLO7q3Ir-XDkWsajm0d0TQqqrfuX54i4BMpdQg,1018
170
- modal_proto/options_pb2_grpc.py,sha256=1oboBPFxaTEXt9Aw7EAj8gXHDCNMhZD2VXqocC9l_gk,159
171
- modal_proto/options_pb2_grpc.pyi,sha256=CImmhxHsYnF09iENPoe8S4J-n93jtgUYD2JPAc0yJSI,247
172
- modal_proto/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
173
- modal_version/__init__.py,sha256=jIkxlQhBAx09ofvdeJzNjAL4giGCLLafCLWcf4jKxBM,121
174
- modal_version/__main__.py,sha256=2FO0yYQQwDTh6udt1h-cBnGd1c4ZyHnHSI4BksxzVac,105
175
- modal-1.0.3.dev10.dist-info/METADATA,sha256=_6WLpgYUUS5ZswXJBe_uJlb-yH1euaG4QkwlgX_Gm_c,2455
176
- modal-1.0.3.dev10.dist-info/WHEEL,sha256=1tXe9gY0PYatrMPMDd6jXqjfpz_B-Wqm32CPfRC58XU,91
177
- modal-1.0.3.dev10.dist-info/entry_points.txt,sha256=An-wYgeEUnm6xzrAP9_NTSTSciYvvEWsMZILtYrvpAI,46
178
- modal-1.0.3.dev10.dist-info/top_level.txt,sha256=4BWzoKYREKUZ5iyPzZpjqx4G8uB5TWxXPDwibLcVa7k,43
179
- modal-1.0.3.dev10.dist-info/RECORD,,
@@ -1,3 +0,0 @@
1
- # Generated by the Modal Protocol Buffers compiler. DO NOT EDIT!
2
- # source: modal_proto/options.proto
3
- # plugin: __main__
modal_proto/options.proto DELETED
@@ -1,19 +0,0 @@
1
- // Defines custom options used internally at Modal.
2
- // Custom options must be in the range 50000-99999.
3
- // Reference: https://protobuf.dev/programming-guides/proto2/#customoptions
4
- syntax = "proto3";
5
-
6
- option go_package = "github.com/modal-labs/modal/go/proto";
7
-
8
- import "google/protobuf/descriptor.proto";
9
-
10
- package modal.options;
11
-
12
- extend google.protobuf.FieldOptions {
13
- optional bool audit_target_attr = 50000;
14
- }
15
-
16
- extend google.protobuf.MethodOptions {
17
- optional string audit_event_name = 50000;
18
- optional string audit_event_description = 50001;
19
- }
@@ -1,3 +0,0 @@
1
- # Generated by the Protocol Buffers compiler. DO NOT EDIT!
2
- # source: modal_proto/options.proto
3
- # plugin: grpclib.plugin.main
@@ -1,35 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # Generated by the protocol buffer compiler. DO NOT EDIT!
3
- # source: modal_proto/options.proto
4
- """Generated protocol buffer code."""
5
- from google.protobuf import descriptor as _descriptor
6
- from google.protobuf import descriptor_pool as _descriptor_pool
7
- from google.protobuf import message as _message
8
- from google.protobuf import reflection as _reflection
9
- from google.protobuf import symbol_database as _symbol_database
10
- # @@protoc_insertion_point(imports)
11
-
12
- _sym_db = _symbol_database.Default()
13
-
14
-
15
- from google.protobuf import descriptor_pb2 as google_dot_protobuf_dot_descriptor__pb2
16
-
17
-
18
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x19modal_proto/options.proto\x12\rmodal.options\x1a google/protobuf/descriptor.proto:=\n\x11\x61udit_target_attr\x12\x1d.google.protobuf.FieldOptions\x18\xd0\x86\x03 \x01(\x08\x88\x01\x01:=\n\x10\x61udit_event_name\x12\x1e.google.protobuf.MethodOptions\x18\xd0\x86\x03 \x01(\t\x88\x01\x01:D\n\x17\x61udit_event_description\x12\x1e.google.protobuf.MethodOptions\x18\xd1\x86\x03 \x01(\t\x88\x01\x01\x42&Z$github.com/modal-labs/modal/go/protob\x06proto3')
19
-
20
-
21
- AUDIT_TARGET_ATTR_FIELD_NUMBER = 50000
22
- audit_target_attr = DESCRIPTOR.extensions_by_name['audit_target_attr']
23
- AUDIT_EVENT_NAME_FIELD_NUMBER = 50000
24
- audit_event_name = DESCRIPTOR.extensions_by_name['audit_event_name']
25
- AUDIT_EVENT_DESCRIPTION_FIELD_NUMBER = 50001
26
- audit_event_description = DESCRIPTOR.extensions_by_name['audit_event_description']
27
-
28
- if _descriptor._USE_C_DESCRIPTORS == False:
29
- google_dot_protobuf_dot_descriptor__pb2.FieldOptions.RegisterExtension(audit_target_attr)
30
- google_dot_protobuf_dot_descriptor__pb2.MethodOptions.RegisterExtension(audit_event_name)
31
- google_dot_protobuf_dot_descriptor__pb2.MethodOptions.RegisterExtension(audit_event_description)
32
-
33
- DESCRIPTOR._options = None
34
- DESCRIPTOR._serialized_options = b'Z$github.com/modal-labs/modal/go/proto'
35
- # @@protoc_insertion_point(module_scope)
@@ -1,20 +0,0 @@
1
- """
2
- @generated by mypy-protobuf. Do not edit manually!
3
- isort:skip_file
4
- Defines custom options used internally at Modal.
5
- Custom options must be in the range 50000-99999.
6
- Reference: https://protobuf.dev/programming-guides/proto2/#customoptions
7
- """
8
- import builtins
9
- import google.protobuf.descriptor
10
- import google.protobuf.descriptor_pb2
11
- import google.protobuf.internal.extension_dict
12
-
13
- DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
14
-
15
- AUDIT_TARGET_ATTR_FIELD_NUMBER: builtins.int
16
- AUDIT_EVENT_NAME_FIELD_NUMBER: builtins.int
17
- AUDIT_EVENT_DESCRIPTION_FIELD_NUMBER: builtins.int
18
- audit_target_attr: google.protobuf.internal.extension_dict._ExtensionFieldDescriptor[google.protobuf.descriptor_pb2.FieldOptions, builtins.bool]
19
- audit_event_name: google.protobuf.internal.extension_dict._ExtensionFieldDescriptor[google.protobuf.descriptor_pb2.MethodOptions, builtins.str]
20
- audit_event_description: google.protobuf.internal.extension_dict._ExtensionFieldDescriptor[google.protobuf.descriptor_pb2.MethodOptions, builtins.str]
@@ -1,4 +0,0 @@
1
- # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
- """Client and server classes corresponding to protobuf-defined services."""
3
- import grpc
4
-
@@ -1,7 +0,0 @@
1
- """
2
- @generated by mypy-protobuf. Do not edit manually!
3
- isort:skip_file
4
- Defines custom options used internally at Modal.
5
- Custom options must be in the range 50000-99999.
6
- Reference: https://protobuf.dev/programming-guides/proto2/#customoptions
7
- """
File without changes
File without changes
File without changes
File without changes
File without changes