modal 0.73.83__tar.gz → 0.73.84__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. {modal-0.73.83 → modal-0.73.84}/PKG-INFO +1 -1
  2. {modal-0.73.83 → modal-0.73.84}/modal/_partial_function.py +7 -22
  3. {modal-0.73.83 → modal-0.73.84}/modal/client.pyi +2 -2
  4. {modal-0.73.83 → modal-0.73.84}/modal/partial_function.pyi +2 -6
  5. {modal-0.73.83 → modal-0.73.84}/modal.egg-info/PKG-INFO +1 -1
  6. {modal-0.73.83 → modal-0.73.84}/modal_version/_version_generated.py +1 -1
  7. {modal-0.73.83 → modal-0.73.84}/LICENSE +0 -0
  8. {modal-0.73.83 → modal-0.73.84}/README.md +0 -0
  9. {modal-0.73.83 → modal-0.73.84}/modal/__init__.py +0 -0
  10. {modal-0.73.83 → modal-0.73.84}/modal/__main__.py +0 -0
  11. {modal-0.73.83 → modal-0.73.84}/modal/_clustered_functions.py +0 -0
  12. {modal-0.73.83 → modal-0.73.84}/modal/_clustered_functions.pyi +0 -0
  13. {modal-0.73.83 → modal-0.73.84}/modal/_container_entrypoint.py +0 -0
  14. {modal-0.73.83 → modal-0.73.84}/modal/_functions.py +0 -0
  15. {modal-0.73.83 → modal-0.73.84}/modal/_ipython.py +0 -0
  16. {modal-0.73.83 → modal-0.73.84}/modal/_location.py +0 -0
  17. {modal-0.73.83 → modal-0.73.84}/modal/_object.py +0 -0
  18. {modal-0.73.83 → modal-0.73.84}/modal/_output.py +0 -0
  19. {modal-0.73.83 → modal-0.73.84}/modal/_proxy_tunnel.py +0 -0
  20. {modal-0.73.83 → modal-0.73.84}/modal/_pty.py +0 -0
  21. {modal-0.73.83 → modal-0.73.84}/modal/_resolver.py +0 -0
  22. {modal-0.73.83 → modal-0.73.84}/modal/_resources.py +0 -0
  23. {modal-0.73.83 → modal-0.73.84}/modal/_runtime/__init__.py +0 -0
  24. {modal-0.73.83 → modal-0.73.84}/modal/_runtime/asgi.py +0 -0
  25. {modal-0.73.83 → modal-0.73.84}/modal/_runtime/container_io_manager.py +0 -0
  26. {modal-0.73.83 → modal-0.73.84}/modal/_runtime/container_io_manager.pyi +0 -0
  27. {modal-0.73.83 → modal-0.73.84}/modal/_runtime/execution_context.py +0 -0
  28. {modal-0.73.83 → modal-0.73.84}/modal/_runtime/execution_context.pyi +0 -0
  29. {modal-0.73.83 → modal-0.73.84}/modal/_runtime/gpu_memory_snapshot.py +0 -0
  30. {modal-0.73.83 → modal-0.73.84}/modal/_runtime/telemetry.py +0 -0
  31. {modal-0.73.83 → modal-0.73.84}/modal/_runtime/user_code_imports.py +0 -0
  32. {modal-0.73.83 → modal-0.73.84}/modal/_serialization.py +0 -0
  33. {modal-0.73.83 → modal-0.73.84}/modal/_traceback.py +0 -0
  34. {modal-0.73.83 → modal-0.73.84}/modal/_tunnel.py +0 -0
  35. {modal-0.73.83 → modal-0.73.84}/modal/_tunnel.pyi +0 -0
  36. {modal-0.73.83 → modal-0.73.84}/modal/_utils/__init__.py +0 -0
  37. {modal-0.73.83 → modal-0.73.84}/modal/_utils/app_utils.py +0 -0
  38. {modal-0.73.83 → modal-0.73.84}/modal/_utils/async_utils.py +0 -0
  39. {modal-0.73.83 → modal-0.73.84}/modal/_utils/blob_utils.py +0 -0
  40. {modal-0.73.83 → modal-0.73.84}/modal/_utils/bytes_io_segment_payload.py +0 -0
  41. {modal-0.73.83 → modal-0.73.84}/modal/_utils/deprecation.py +0 -0
  42. {modal-0.73.83 → modal-0.73.84}/modal/_utils/docker_utils.py +0 -0
  43. {modal-0.73.83 → modal-0.73.84}/modal/_utils/function_utils.py +0 -0
  44. {modal-0.73.83 → modal-0.73.84}/modal/_utils/grpc_testing.py +0 -0
  45. {modal-0.73.83 → modal-0.73.84}/modal/_utils/grpc_utils.py +0 -0
  46. {modal-0.73.83 → modal-0.73.84}/modal/_utils/hash_utils.py +0 -0
  47. {modal-0.73.83 → modal-0.73.84}/modal/_utils/http_utils.py +0 -0
  48. {modal-0.73.83 → modal-0.73.84}/modal/_utils/logger.py +0 -0
  49. {modal-0.73.83 → modal-0.73.84}/modal/_utils/mount_utils.py +0 -0
  50. {modal-0.73.83 → modal-0.73.84}/modal/_utils/name_utils.py +0 -0
  51. {modal-0.73.83 → modal-0.73.84}/modal/_utils/package_utils.py +0 -0
  52. {modal-0.73.83 → modal-0.73.84}/modal/_utils/pattern_utils.py +0 -0
  53. {modal-0.73.83 → modal-0.73.84}/modal/_utils/rand_pb_testing.py +0 -0
  54. {modal-0.73.83 → modal-0.73.84}/modal/_utils/shell_utils.py +0 -0
  55. {modal-0.73.83 → modal-0.73.84}/modal/_vendor/__init__.py +0 -0
  56. {modal-0.73.83 → modal-0.73.84}/modal/_vendor/a2wsgi_wsgi.py +0 -0
  57. {modal-0.73.83 → modal-0.73.84}/modal/_vendor/cloudpickle.py +0 -0
  58. {modal-0.73.83 → modal-0.73.84}/modal/_vendor/tblib.py +0 -0
  59. {modal-0.73.83 → modal-0.73.84}/modal/_watcher.py +0 -0
  60. {modal-0.73.83 → modal-0.73.84}/modal/app.py +0 -0
  61. {modal-0.73.83 → modal-0.73.84}/modal/app.pyi +0 -0
  62. {modal-0.73.83 → modal-0.73.84}/modal/call_graph.py +0 -0
  63. {modal-0.73.83 → modal-0.73.84}/modal/cli/__init__.py +0 -0
  64. {modal-0.73.83 → modal-0.73.84}/modal/cli/_download.py +0 -0
  65. {modal-0.73.83 → modal-0.73.84}/modal/cli/_traceback.py +0 -0
  66. {modal-0.73.83 → modal-0.73.84}/modal/cli/app.py +0 -0
  67. {modal-0.73.83 → modal-0.73.84}/modal/cli/config.py +0 -0
  68. {modal-0.73.83 → modal-0.73.84}/modal/cli/container.py +0 -0
  69. {modal-0.73.83 → modal-0.73.84}/modal/cli/dict.py +0 -0
  70. {modal-0.73.83 → modal-0.73.84}/modal/cli/entry_point.py +0 -0
  71. {modal-0.73.83 → modal-0.73.84}/modal/cli/environment.py +0 -0
  72. {modal-0.73.83 → modal-0.73.84}/modal/cli/import_refs.py +0 -0
  73. {modal-0.73.83 → modal-0.73.84}/modal/cli/launch.py +0 -0
  74. {modal-0.73.83 → modal-0.73.84}/modal/cli/network_file_system.py +0 -0
  75. {modal-0.73.83 → modal-0.73.84}/modal/cli/profile.py +0 -0
  76. {modal-0.73.83 → modal-0.73.84}/modal/cli/programs/__init__.py +0 -0
  77. {modal-0.73.83 → modal-0.73.84}/modal/cli/programs/run_jupyter.py +0 -0
  78. {modal-0.73.83 → modal-0.73.84}/modal/cli/programs/vscode.py +0 -0
  79. {modal-0.73.83 → modal-0.73.84}/modal/cli/queues.py +0 -0
  80. {modal-0.73.83 → modal-0.73.84}/modal/cli/run.py +0 -0
  81. {modal-0.73.83 → modal-0.73.84}/modal/cli/secret.py +0 -0
  82. {modal-0.73.83 → modal-0.73.84}/modal/cli/token.py +0 -0
  83. {modal-0.73.83 → modal-0.73.84}/modal/cli/utils.py +0 -0
  84. {modal-0.73.83 → modal-0.73.84}/modal/cli/volume.py +0 -0
  85. {modal-0.73.83 → modal-0.73.84}/modal/client.py +0 -0
  86. {modal-0.73.83 → modal-0.73.84}/modal/cloud_bucket_mount.py +0 -0
  87. {modal-0.73.83 → modal-0.73.84}/modal/cloud_bucket_mount.pyi +0 -0
  88. {modal-0.73.83 → modal-0.73.84}/modal/cls.py +0 -0
  89. {modal-0.73.83 → modal-0.73.84}/modal/cls.pyi +0 -0
  90. {modal-0.73.83 → modal-0.73.84}/modal/config.py +0 -0
  91. {modal-0.73.83 → modal-0.73.84}/modal/container_process.py +0 -0
  92. {modal-0.73.83 → modal-0.73.84}/modal/container_process.pyi +0 -0
  93. {modal-0.73.83 → modal-0.73.84}/modal/dict.py +0 -0
  94. {modal-0.73.83 → modal-0.73.84}/modal/dict.pyi +0 -0
  95. {modal-0.73.83 → modal-0.73.84}/modal/environments.py +0 -0
  96. {modal-0.73.83 → modal-0.73.84}/modal/environments.pyi +0 -0
  97. {modal-0.73.83 → modal-0.73.84}/modal/exception.py +0 -0
  98. {modal-0.73.83 → modal-0.73.84}/modal/experimental.py +0 -0
  99. {modal-0.73.83 → modal-0.73.84}/modal/experimental.pyi +0 -0
  100. {modal-0.73.83 → modal-0.73.84}/modal/extensions/__init__.py +0 -0
  101. {modal-0.73.83 → modal-0.73.84}/modal/extensions/ipython.py +0 -0
  102. {modal-0.73.83 → modal-0.73.84}/modal/file_io.py +0 -0
  103. {modal-0.73.83 → modal-0.73.84}/modal/file_io.pyi +0 -0
  104. {modal-0.73.83 → modal-0.73.84}/modal/file_pattern_matcher.py +0 -0
  105. {modal-0.73.83 → modal-0.73.84}/modal/functions.py +0 -0
  106. {modal-0.73.83 → modal-0.73.84}/modal/functions.pyi +0 -0
  107. {modal-0.73.83 → modal-0.73.84}/modal/gpu.py +0 -0
  108. {modal-0.73.83 → modal-0.73.84}/modal/image.py +0 -0
  109. {modal-0.73.83 → modal-0.73.84}/modal/image.pyi +0 -0
  110. {modal-0.73.83 → modal-0.73.84}/modal/io_streams.py +0 -0
  111. {modal-0.73.83 → modal-0.73.84}/modal/io_streams.pyi +0 -0
  112. {modal-0.73.83 → modal-0.73.84}/modal/mount.py +0 -0
  113. {modal-0.73.83 → modal-0.73.84}/modal/mount.pyi +0 -0
  114. {modal-0.73.83 → modal-0.73.84}/modal/network_file_system.py +0 -0
  115. {modal-0.73.83 → modal-0.73.84}/modal/network_file_system.pyi +0 -0
  116. {modal-0.73.83 → modal-0.73.84}/modal/object.py +0 -0
  117. {modal-0.73.83 → modal-0.73.84}/modal/object.pyi +0 -0
  118. {modal-0.73.83 → modal-0.73.84}/modal/output.py +0 -0
  119. {modal-0.73.83 → modal-0.73.84}/modal/parallel_map.py +0 -0
  120. {modal-0.73.83 → modal-0.73.84}/modal/parallel_map.pyi +0 -0
  121. {modal-0.73.83 → modal-0.73.84}/modal/partial_function.py +0 -0
  122. {modal-0.73.83 → modal-0.73.84}/modal/proxy.py +0 -0
  123. {modal-0.73.83 → modal-0.73.84}/modal/proxy.pyi +0 -0
  124. {modal-0.73.83 → modal-0.73.84}/modal/py.typed +0 -0
  125. {modal-0.73.83 → modal-0.73.84}/modal/queue.py +0 -0
  126. {modal-0.73.83 → modal-0.73.84}/modal/queue.pyi +0 -0
  127. {modal-0.73.83 → modal-0.73.84}/modal/requirements/2023.12.312.txt +0 -0
  128. {modal-0.73.83 → modal-0.73.84}/modal/requirements/2023.12.txt +0 -0
  129. {modal-0.73.83 → modal-0.73.84}/modal/requirements/2024.04.txt +0 -0
  130. {modal-0.73.83 → modal-0.73.84}/modal/requirements/2024.10.txt +0 -0
  131. {modal-0.73.83 → modal-0.73.84}/modal/requirements/README.md +0 -0
  132. {modal-0.73.83 → modal-0.73.84}/modal/requirements/base-images.json +0 -0
  133. {modal-0.73.83 → modal-0.73.84}/modal/retries.py +0 -0
  134. {modal-0.73.83 → modal-0.73.84}/modal/runner.py +0 -0
  135. {modal-0.73.83 → modal-0.73.84}/modal/runner.pyi +0 -0
  136. {modal-0.73.83 → modal-0.73.84}/modal/running_app.py +0 -0
  137. {modal-0.73.83 → modal-0.73.84}/modal/sandbox.py +0 -0
  138. {modal-0.73.83 → modal-0.73.84}/modal/sandbox.pyi +0 -0
  139. {modal-0.73.83 → modal-0.73.84}/modal/schedule.py +0 -0
  140. {modal-0.73.83 → modal-0.73.84}/modal/scheduler_placement.py +0 -0
  141. {modal-0.73.83 → modal-0.73.84}/modal/secret.py +0 -0
  142. {modal-0.73.83 → modal-0.73.84}/modal/secret.pyi +0 -0
  143. {modal-0.73.83 → modal-0.73.84}/modal/serving.py +0 -0
  144. {modal-0.73.83 → modal-0.73.84}/modal/serving.pyi +0 -0
  145. {modal-0.73.83 → modal-0.73.84}/modal/snapshot.py +0 -0
  146. {modal-0.73.83 → modal-0.73.84}/modal/snapshot.pyi +0 -0
  147. {modal-0.73.83 → modal-0.73.84}/modal/stream_type.py +0 -0
  148. {modal-0.73.83 → modal-0.73.84}/modal/token_flow.py +0 -0
  149. {modal-0.73.83 → modal-0.73.84}/modal/token_flow.pyi +0 -0
  150. {modal-0.73.83 → modal-0.73.84}/modal/volume.py +0 -0
  151. {modal-0.73.83 → modal-0.73.84}/modal/volume.pyi +0 -0
  152. {modal-0.73.83 → modal-0.73.84}/modal.egg-info/SOURCES.txt +0 -0
  153. {modal-0.73.83 → modal-0.73.84}/modal.egg-info/dependency_links.txt +0 -0
  154. {modal-0.73.83 → modal-0.73.84}/modal.egg-info/entry_points.txt +0 -0
  155. {modal-0.73.83 → modal-0.73.84}/modal.egg-info/requires.txt +0 -0
  156. {modal-0.73.83 → modal-0.73.84}/modal.egg-info/top_level.txt +0 -0
  157. {modal-0.73.83 → modal-0.73.84}/modal_docs/__init__.py +0 -0
  158. {modal-0.73.83 → modal-0.73.84}/modal_docs/gen_cli_docs.py +0 -0
  159. {modal-0.73.83 → modal-0.73.84}/modal_docs/gen_reference_docs.py +0 -0
  160. {modal-0.73.83 → modal-0.73.84}/modal_docs/mdmd/__init__.py +0 -0
  161. {modal-0.73.83 → modal-0.73.84}/modal_docs/mdmd/mdmd.py +0 -0
  162. {modal-0.73.83 → modal-0.73.84}/modal_docs/mdmd/signatures.py +0 -0
  163. {modal-0.73.83 → modal-0.73.84}/modal_proto/__init__.py +0 -0
  164. {modal-0.73.83 → modal-0.73.84}/modal_proto/api.proto +0 -0
  165. {modal-0.73.83 → modal-0.73.84}/modal_proto/api_grpc.py +0 -0
  166. {modal-0.73.83 → modal-0.73.84}/modal_proto/api_pb2.py +0 -0
  167. {modal-0.73.83 → modal-0.73.84}/modal_proto/api_pb2.pyi +0 -0
  168. {modal-0.73.83 → modal-0.73.84}/modal_proto/api_pb2_grpc.py +0 -0
  169. {modal-0.73.83 → modal-0.73.84}/modal_proto/api_pb2_grpc.pyi +0 -0
  170. {modal-0.73.83 → modal-0.73.84}/modal_proto/modal_api_grpc.py +0 -0
  171. {modal-0.73.83 → modal-0.73.84}/modal_proto/modal_options_grpc.py +0 -0
  172. {modal-0.73.83 → modal-0.73.84}/modal_proto/options.proto +0 -0
  173. {modal-0.73.83 → modal-0.73.84}/modal_proto/options_grpc.py +0 -0
  174. {modal-0.73.83 → modal-0.73.84}/modal_proto/options_pb2.py +0 -0
  175. {modal-0.73.83 → modal-0.73.84}/modal_proto/options_pb2.pyi +0 -0
  176. {modal-0.73.83 → modal-0.73.84}/modal_proto/options_pb2_grpc.py +0 -0
  177. {modal-0.73.83 → modal-0.73.84}/modal_proto/options_pb2_grpc.pyi +0 -0
  178. {modal-0.73.83 → modal-0.73.84}/modal_proto/py.typed +0 -0
  179. {modal-0.73.83 → modal-0.73.84}/modal_version/__init__.py +0 -0
  180. {modal-0.73.83 → modal-0.73.84}/modal_version/__main__.py +0 -0
  181. {modal-0.73.83 → modal-0.73.84}/pyproject.toml +0 -0
  182. {modal-0.73.83 → modal-0.73.84}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: modal
3
- Version: 0.73.83
3
+ Version: 0.73.84
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License: Apache-2.0
@@ -54,7 +54,6 @@ class _PartialFunction(typing.Generic[P, ReturnType, OriginalReturnType]):
54
54
  flags: _PartialFunctionFlags
55
55
  webhook_config: Optional[api_pb2.WebhookConfig]
56
56
  is_generator: bool
57
- keep_warm: Optional[int]
58
57
  batch_max_size: Optional[int]
59
58
  batch_wait_ms: Optional[int]
60
59
  force_build: bool
@@ -65,9 +64,9 @@ class _PartialFunction(typing.Generic[P, ReturnType, OriginalReturnType]):
65
64
  self,
66
65
  raw_f: Callable[P, ReturnType],
67
66
  flags: _PartialFunctionFlags,
67
+ *,
68
68
  webhook_config: Optional[api_pb2.WebhookConfig] = None,
69
69
  is_generator: Optional[bool] = None,
70
- keep_warm: Optional[int] = None,
71
70
  batch_max_size: Optional[int] = None,
72
71
  batch_wait_ms: Optional[int] = None,
73
72
  cluster_size: Optional[int] = None, # Experimental: Clustered functions
@@ -84,7 +83,6 @@ class _PartialFunction(typing.Generic[P, ReturnType, OriginalReturnType]):
84
83
  final_is_generator = is_generator
85
84
 
86
85
  self.is_generator = final_is_generator
87
- self.keep_warm = keep_warm
88
86
  self.wrapped = False # Make sure that this was converted into a FunctionHandle
89
87
  self.batch_max_size = batch_max_size
90
88
  self.batch_wait_ms = batch_wait_ms
@@ -141,7 +139,6 @@ class _PartialFunction(typing.Generic[P, ReturnType, OriginalReturnType]):
141
139
  raw_f=self.raw_f,
142
140
  flags=(self.flags | flags),
143
141
  webhook_config=self.webhook_config,
144
- keep_warm=self.keep_warm,
145
142
  batch_max_size=self.batch_max_size,
146
143
  batch_wait_ms=self.batch_wait_ms,
147
144
  force_build=self.force_build,
@@ -198,7 +195,6 @@ def _method(
198
195
  # Set this to True if it's a non-generator function returning
199
196
  # a [sync/async] generator object
200
197
  is_generator: Optional[bool] = None,
201
- keep_warm: Optional[int] = None, # Deprecated: Use keep_warm on @app.cls() instead
202
198
  ) -> _MethodDecoratorType:
203
199
  """Decorator for methods that should be transformed into a Modal Function registered against this class's App.
204
200
 
@@ -216,17 +212,6 @@ def _method(
216
212
  if _warn_parentheses_missing is not None:
217
213
  raise InvalidError("Positional arguments are not allowed. Did you forget parentheses? Suggestion: `@method()`.")
218
214
 
219
- if keep_warm is not None:
220
- deprecation_warning(
221
- (2024, 6, 10),
222
- (
223
- "`keep_warm=` is no longer supported per-method on Modal classes. "
224
- "All methods and web endpoints of a class use the same set of containers now. "
225
- "Use keep_warm via the @app.cls() decorator instead. "
226
- ),
227
- pending=True,
228
- )
229
-
230
215
  def wrapper(raw_f: Callable[..., Any]) -> _PartialFunction:
231
216
  nonlocal is_generator
232
217
  if isinstance(raw_f, _PartialFunction) and raw_f.webhook_config:
@@ -241,7 +226,7 @@ def _method(
241
226
  "Batched function on classes should not be wrapped by `@method`. "
242
227
  "Suggestion: remove the `@method` decorator."
243
228
  )
244
- return _PartialFunction(raw_f, _PartialFunctionFlags.FUNCTION, is_generator=is_generator, keep_warm=keep_warm)
229
+ return _PartialFunction(raw_f, _PartialFunctionFlags.FUNCTION, is_generator=is_generator)
245
230
 
246
231
  return wrapper # type: ignore # synchronicity issue with wrapped vs unwrapped types and protocols
247
232
 
@@ -300,7 +285,7 @@ def _fastapi_endpoint(
300
285
  return _PartialFunction(
301
286
  raw_f,
302
287
  _PartialFunctionFlags.FUNCTION,
303
- api_pb2.WebhookConfig(
288
+ webhook_config=api_pb2.WebhookConfig(
304
289
  type=api_pb2.WEBHOOK_TYPE_FUNCTION,
305
290
  method=method,
306
291
  web_endpoint_docs=docs,
@@ -358,7 +343,7 @@ def _web_endpoint(
358
343
  return _PartialFunction(
359
344
  raw_f,
360
345
  _PartialFunctionFlags.FUNCTION,
361
- api_pb2.WebhookConfig(
346
+ webhook_config=api_pb2.WebhookConfig(
362
347
  type=api_pb2.WEBHOOK_TYPE_FUNCTION,
363
348
  method=method,
364
349
  web_endpoint_docs=docs,
@@ -428,7 +413,7 @@ def _asgi_app(
428
413
  return _PartialFunction(
429
414
  raw_f,
430
415
  _PartialFunctionFlags.FUNCTION,
431
- api_pb2.WebhookConfig(
416
+ webhook_config=api_pb2.WebhookConfig(
432
417
  type=api_pb2.WEBHOOK_TYPE_ASGI_APP,
433
418
  requested_suffix=label,
434
419
  async_mode=api_pb2.WEBHOOK_ASYNC_MODE_AUTO,
@@ -496,7 +481,7 @@ def _wsgi_app(
496
481
  return _PartialFunction(
497
482
  raw_f,
498
483
  _PartialFunctionFlags.FUNCTION,
499
- api_pb2.WebhookConfig(
484
+ webhook_config=api_pb2.WebhookConfig(
500
485
  type=api_pb2.WEBHOOK_TYPE_WSGI_APP,
501
486
  requested_suffix=label,
502
487
  async_mode=api_pb2.WEBHOOK_ASYNC_MODE_AUTO,
@@ -551,7 +536,7 @@ def _web_server(
551
536
  return _PartialFunction(
552
537
  raw_f,
553
538
  _PartialFunctionFlags.FUNCTION,
554
- api_pb2.WebhookConfig(
539
+ webhook_config=api_pb2.WebhookConfig(
555
540
  type=api_pb2.WEBHOOK_TYPE_WEB_SERVER,
556
541
  requested_suffix=label,
557
542
  async_mode=api_pb2.WEBHOOK_ASYNC_MODE_AUTO,
@@ -27,7 +27,7 @@ class _Client:
27
27
  _snapshotted: bool
28
28
 
29
29
  def __init__(
30
- self, server_url: str, client_type: int, credentials: typing.Optional[tuple[str, str]], version: str = "0.73.83"
30
+ self, server_url: str, client_type: int, credentials: typing.Optional[tuple[str, str]], version: str = "0.73.84"
31
31
  ): ...
32
32
  def is_closed(self) -> bool: ...
33
33
  @property
@@ -85,7 +85,7 @@ class Client:
85
85
  _snapshotted: bool
86
86
 
87
87
  def __init__(
88
- self, server_url: str, client_type: int, credentials: typing.Optional[tuple[str, str]], version: str = "0.73.83"
88
+ self, server_url: str, client_type: int, credentials: typing.Optional[tuple[str, str]], version: str = "0.73.84"
89
89
  ): ...
90
90
  def is_closed(self) -> bool: ...
91
91
  @property
@@ -13,7 +13,6 @@ class PartialFunction(
13
13
  flags: modal._partial_function._PartialFunctionFlags
14
14
  webhook_config: typing.Optional[modal_proto.api_pb2.WebhookConfig]
15
15
  is_generator: bool
16
- keep_warm: typing.Optional[int]
17
16
  batch_max_size: typing.Optional[int]
18
17
  batch_wait_ms: typing.Optional[int]
19
18
  force_build: bool
@@ -24,9 +23,9 @@ class PartialFunction(
24
23
  self,
25
24
  raw_f: collections.abc.Callable[modal._partial_function.P, modal._partial_function.ReturnType],
26
25
  flags: modal._partial_function._PartialFunctionFlags,
26
+ *,
27
27
  webhook_config: typing.Optional[modal_proto.api_pb2.WebhookConfig] = None,
28
28
  is_generator: typing.Optional[bool] = None,
29
- keep_warm: typing.Optional[int] = None,
30
29
  batch_max_size: typing.Optional[int] = None,
31
30
  batch_wait_ms: typing.Optional[int] = None,
32
31
  cluster_size: typing.Optional[int] = None,
@@ -44,10 +43,7 @@ class PartialFunction(
44
43
  def add_flags(self, flags) -> PartialFunction: ...
45
44
 
46
45
  def method(
47
- _warn_parentheses_missing=None,
48
- *,
49
- is_generator: typing.Optional[bool] = None,
50
- keep_warm: typing.Optional[int] = None,
46
+ _warn_parentheses_missing=None, *, is_generator: typing.Optional[bool] = None
51
47
  ) -> modal._partial_function._MethodDecoratorType: ...
52
48
  def web_endpoint(
53
49
  _warn_parentheses_missing=None,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: modal
3
- Version: 0.73.83
3
+ Version: 0.73.84
4
4
  Summary: Python client library for Modal
5
5
  Author-email: Modal Labs <support@modal.com>
6
6
  License: Apache-2.0
@@ -1,4 +1,4 @@
1
1
  # Copyright Modal Labs 2025
2
2
 
3
3
  # Note: Reset this value to -1 whenever you make a minor `0.X` release of the client.
4
- build_number = 83 # git: a4a605c
4
+ build_number = 84 # git: edebb02
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes