prefect-client 2.14.21__py3-none-any.whl → 2.15.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.
Files changed (103) hide show
  1. prefect/_internal/concurrency/api.py +37 -2
  2. prefect/_internal/concurrency/calls.py +9 -0
  3. prefect/_internal/concurrency/cancellation.py +3 -1
  4. prefect/_internal/concurrency/event_loop.py +2 -2
  5. prefect/_internal/concurrency/threads.py +3 -2
  6. prefect/_internal/pydantic/annotations/pendulum.py +4 -4
  7. prefect/_internal/pydantic/v2_schema.py +2 -2
  8. prefect/_vendor/fastapi/__init__.py +1 -1
  9. prefect/_vendor/fastapi/applications.py +13 -13
  10. prefect/_vendor/fastapi/background.py +3 -1
  11. prefect/_vendor/fastapi/concurrency.py +7 -3
  12. prefect/_vendor/fastapi/datastructures.py +9 -7
  13. prefect/_vendor/fastapi/dependencies/utils.py +12 -7
  14. prefect/_vendor/fastapi/encoders.py +1 -1
  15. prefect/_vendor/fastapi/exception_handlers.py +7 -4
  16. prefect/_vendor/fastapi/exceptions.py +4 -2
  17. prefect/_vendor/fastapi/middleware/__init__.py +1 -1
  18. prefect/_vendor/fastapi/middleware/asyncexitstack.py +1 -1
  19. prefect/_vendor/fastapi/middleware/cors.py +3 -1
  20. prefect/_vendor/fastapi/middleware/gzip.py +3 -1
  21. prefect/_vendor/fastapi/middleware/httpsredirect.py +1 -1
  22. prefect/_vendor/fastapi/middleware/trustedhost.py +1 -1
  23. prefect/_vendor/fastapi/middleware/wsgi.py +3 -1
  24. prefect/_vendor/fastapi/openapi/docs.py +1 -1
  25. prefect/_vendor/fastapi/openapi/utils.py +3 -3
  26. prefect/_vendor/fastapi/requests.py +4 -2
  27. prefect/_vendor/fastapi/responses.py +13 -7
  28. prefect/_vendor/fastapi/routing.py +15 -15
  29. prefect/_vendor/fastapi/security/api_key.py +3 -3
  30. prefect/_vendor/fastapi/security/http.py +2 -2
  31. prefect/_vendor/fastapi/security/oauth2.py +2 -2
  32. prefect/_vendor/fastapi/security/open_id_connect_url.py +3 -3
  33. prefect/_vendor/fastapi/staticfiles.py +1 -1
  34. prefect/_vendor/fastapi/templating.py +3 -1
  35. prefect/_vendor/fastapi/testclient.py +1 -1
  36. prefect/_vendor/fastapi/utils.py +3 -3
  37. prefect/_vendor/fastapi/websockets.py +7 -3
  38. prefect/_vendor/starlette/__init__.py +1 -0
  39. prefect/_vendor/starlette/_compat.py +28 -0
  40. prefect/_vendor/starlette/_exception_handler.py +80 -0
  41. prefect/_vendor/starlette/_utils.py +88 -0
  42. prefect/_vendor/starlette/applications.py +261 -0
  43. prefect/_vendor/starlette/authentication.py +159 -0
  44. prefect/_vendor/starlette/background.py +43 -0
  45. prefect/_vendor/starlette/concurrency.py +59 -0
  46. prefect/_vendor/starlette/config.py +151 -0
  47. prefect/_vendor/starlette/convertors.py +87 -0
  48. prefect/_vendor/starlette/datastructures.py +707 -0
  49. prefect/_vendor/starlette/endpoints.py +130 -0
  50. prefect/_vendor/starlette/exceptions.py +60 -0
  51. prefect/_vendor/starlette/formparsers.py +276 -0
  52. prefect/_vendor/starlette/middleware/__init__.py +17 -0
  53. prefect/_vendor/starlette/middleware/authentication.py +52 -0
  54. prefect/_vendor/starlette/middleware/base.py +220 -0
  55. prefect/_vendor/starlette/middleware/cors.py +176 -0
  56. prefect/_vendor/starlette/middleware/errors.py +265 -0
  57. prefect/_vendor/starlette/middleware/exceptions.py +74 -0
  58. prefect/_vendor/starlette/middleware/gzip.py +113 -0
  59. prefect/_vendor/starlette/middleware/httpsredirect.py +19 -0
  60. prefect/_vendor/starlette/middleware/sessions.py +82 -0
  61. prefect/_vendor/starlette/middleware/trustedhost.py +64 -0
  62. prefect/_vendor/starlette/middleware/wsgi.py +147 -0
  63. prefect/_vendor/starlette/requests.py +328 -0
  64. prefect/_vendor/starlette/responses.py +347 -0
  65. prefect/_vendor/starlette/routing.py +933 -0
  66. prefect/_vendor/starlette/schemas.py +154 -0
  67. prefect/_vendor/starlette/staticfiles.py +248 -0
  68. prefect/_vendor/starlette/status.py +199 -0
  69. prefect/_vendor/starlette/templating.py +231 -0
  70. prefect/_vendor/starlette/testclient.py +805 -0
  71. prefect/_vendor/starlette/types.py +30 -0
  72. prefect/_vendor/starlette/websockets.py +193 -0
  73. prefect/blocks/core.py +3 -3
  74. prefect/blocks/notifications.py +8 -8
  75. prefect/client/base.py +1 -1
  76. prefect/client/cloud.py +1 -1
  77. prefect/client/orchestration.py +1 -1
  78. prefect/client/subscriptions.py +2 -6
  79. prefect/concurrency/services.py +1 -1
  80. prefect/context.py +3 -3
  81. prefect/deployments/deployments.py +3 -3
  82. prefect/engine.py +69 -9
  83. prefect/events/clients.py +1 -1
  84. prefect/filesystems.py +9 -9
  85. prefect/flow_runs.py +5 -1
  86. prefect/futures.py +1 -1
  87. prefect/infrastructure/container.py +3 -3
  88. prefect/infrastructure/kubernetes.py +4 -6
  89. prefect/infrastructure/process.py +3 -3
  90. prefect/input/run_input.py +1 -1
  91. prefect/logging/formatters.py +1 -1
  92. prefect/runner/server.py +3 -3
  93. prefect/settings.py +3 -4
  94. prefect/software/pip.py +1 -1
  95. prefect/task_engine.py +4 -0
  96. prefect/task_server.py +35 -17
  97. prefect/utilities/asyncutils.py +1 -1
  98. prefect/utilities/collections.py +1 -1
  99. {prefect_client-2.14.21.dist-info → prefect_client-2.15.0.dist-info}/METADATA +4 -2
  100. {prefect_client-2.14.21.dist-info → prefect_client-2.15.0.dist-info}/RECORD +103 -68
  101. {prefect_client-2.14.21.dist-info → prefect_client-2.15.0.dist-info}/LICENSE +0 -0
  102. {prefect_client-2.14.21.dist-info → prefect_client-2.15.0.dist-info}/WHEEL +0 -0
  103. {prefect_client-2.14.21.dist-info → prefect_client-2.15.0.dist-info}/top_level.txt +0 -0
@@ -398,9 +398,9 @@ class DockerContainer(Infrastructure):
398
398
  return await super().generate_work_pool_base_job_template()
399
399
  for key, value in self.dict(exclude_unset=True, exclude_defaults=True).items():
400
400
  if key == "command":
401
- base_job_template["variables"]["properties"]["command"]["default"] = (
402
- shlex.join(value)
403
- )
401
+ base_job_template["variables"]["properties"]["command"][
402
+ "default"
403
+ ] = shlex.join(value)
404
404
  elif key == "image_registry":
405
405
  self.logger.warning(
406
406
  "Image registry blocks are not supported by Docker"
@@ -376,9 +376,9 @@ class KubernetesJob(Infrastructure):
376
376
  ), "Failed to retrieve default base job template."
377
377
  for key, value in self.dict(exclude_unset=True, exclude_defaults=True).items():
378
378
  if key == "command":
379
- base_job_template["variables"]["properties"]["command"]["default"] = (
380
- shlex.join(value)
381
- )
379
+ base_job_template["variables"]["properties"]["command"][
380
+ "default"
381
+ ] = shlex.join(value)
382
382
  elif key in [
383
383
  "type",
384
384
  "block_type_slug",
@@ -892,9 +892,7 @@ class KubernetesJob(Infrastructure):
892
892
  prefix,
893
893
  max_length=253,
894
894
  regex_pattern=r"[^a-zA-Z0-9-\.]+",
895
- ).strip(
896
- "_-."
897
- ) # Must start or end with alphanumeric characters
895
+ ).strip("_-.") # Must start or end with alphanumeric characters
898
896
  or prefix
899
897
  )
900
898
 
@@ -264,9 +264,9 @@ class Process(Infrastructure):
264
264
  ), "Failed to generate default base job template for Process worker."
265
265
  for key, value in self.dict(exclude_unset=True, exclude_defaults=True).items():
266
266
  if key == "command":
267
- base_job_template["variables"]["properties"]["command"]["default"] = (
268
- shlex.join(value)
269
- )
267
+ base_job_template["variables"]["properties"]["command"][
268
+ "default"
269
+ ] = shlex.join(value)
270
270
  elif key in [
271
271
  "type",
272
272
  "block_type_slug",
@@ -379,7 +379,7 @@ class AutomaticRunInput(RunInput, Generic[T]):
379
379
 
380
380
 
381
381
  def run_input_subclass_from_type(
382
- _type: Union[Type[R], Type[T], pydantic.BaseModel]
382
+ _type: Union[Type[R], Type[T], pydantic.BaseModel],
383
383
  ) -> Union[Type[AutomaticRunInput[T]], Type[R]]:
384
384
  """
385
385
  Create a new `RunInput` subclass from the given type.
@@ -80,7 +80,7 @@ class PrefectFormatter(logging.Formatter):
80
80
  *,
81
81
  defaults=None,
82
82
  task_run_fmt: str = None,
83
- flow_run_fmt: str = None
83
+ flow_run_fmt: str = None,
84
84
  ) -> None:
85
85
  """
86
86
  Implementation of the standard Python formatter with support for multiple
prefect/runner/server.py CHANGED
@@ -139,9 +139,9 @@ async def get_deployment_router(
139
139
  )
140
140
 
141
141
  # Used for updating the route schemas later on
142
- schemas[f"{deployment.name}-{deployment_id}"] = (
143
- deployment.parameter_openapi_schema
144
- )
142
+ schemas[
143
+ f"{deployment.name}-{deployment_id}"
144
+ ] = deployment.parameter_openapi_schema
145
145
  schemas[deployment_id] = deployment.name
146
146
  return router, schemas
147
147
 
prefect/settings.py CHANGED
@@ -39,6 +39,7 @@ settings to be dynamically modified on retrieval. This allows us to make setting
39
39
  dependent on the value of other settings or perform other dynamic effects.
40
40
 
41
41
  """
42
+
42
43
  import logging
43
44
  import os
44
45
  import string
@@ -420,9 +421,7 @@ def warn_on_misconfigured_api_url(values):
420
421
  )
421
422
 
422
423
  if warnings_list:
423
- example = (
424
- 'e.g. PREFECT_API_URL="https://api.prefect.cloud/api/accounts/[ACCOUNT-ID]/workspaces/[WORKSPACE-ID]"'
425
- )
424
+ example = 'e.g. PREFECT_API_URL="https://api.prefect.cloud/api/accounts/[ACCOUNT-ID]/workspaces/[WORKSPACE-ID]"'
426
425
  warnings_list.append(example)
427
426
 
428
427
  warnings.warn("\n".join(warnings_list), stacklevel=2)
@@ -1463,7 +1462,7 @@ PREFECT_EXPERIMENTAL_ENABLE_TASK_SCHEDULING = Setting(bool, default=False)
1463
1462
  Whether or not to enable experimental task scheduling.
1464
1463
  """
1465
1464
 
1466
- PREFECT_EXPERIMENTAL_ENABLE_WORK_QUEUE_STATUS = Setting(bool, default=False)
1465
+ PREFECT_EXPERIMENTAL_ENABLE_WORK_QUEUE_STATUS = Setting(bool, default=True)
1467
1466
  """
1468
1467
  Whether or not to enable experimental work queue status in-place of work queue health.
1469
1468
  """
prefect/software/pip.py CHANGED
@@ -68,7 +68,7 @@ def _is_editable_install(dist: "importlib_metadata.Distribution") -> bool:
68
68
 
69
69
 
70
70
  def _remove_distributions_required_by_others(
71
- dists: Dict[str, "importlib_metadata.Distribution"]
71
+ dists: Dict[str, "importlib_metadata.Distribution"],
72
72
  ) -> Dict[str, "importlib_metadata.Distribution"]:
73
73
  # Collect all child requirements
74
74
  child_requirement_names = set()
prefect/task_engine.py CHANGED
@@ -1,3 +1,4 @@
1
+ import threading
1
2
  from contextlib import AsyncExitStack
2
3
  from typing import (
3
4
  Any,
@@ -8,6 +9,7 @@ from typing import (
8
9
  )
9
10
 
10
11
  import anyio
12
+ import greenback
11
13
  from typing_extensions import Literal
12
14
 
13
15
  from prefect._internal.concurrency.api import create_call, from_async, from_sync
@@ -62,8 +64,10 @@ async def submit_autonomous_task_to_engine(
62
64
  wait_for=wait_for,
63
65
  return_type=return_type,
64
66
  task_runner=task_runner,
67
+ user_thread=threading.current_thread(),
65
68
  )
66
69
  if task.isasync:
67
70
  return await from_async.wait_for_call_in_loop_thread(begin_run)
68
71
  else:
72
+ await greenback.ensure_portal()
69
73
  return from_sync.wait_for_call_in_loop_thread(begin_run)
prefect/task_server.py CHANGED
@@ -3,22 +3,23 @@ import signal
3
3
  import sys
4
4
  from contextlib import AsyncExitStack
5
5
  from functools import partial
6
- from typing import Iterable, Optional, Type
6
+ from typing import Optional, Type
7
7
 
8
8
  import anyio
9
9
  import anyio.abc
10
- import pendulum
11
10
 
12
11
  from prefect import Task, get_client
13
12
  from prefect._internal.concurrency.api import create_call, from_sync
14
13
  from prefect.client.schemas.objects import TaskRun
15
14
  from prefect.client.subscriptions import Subscription
15
+ from prefect.engine import propose_state
16
16
  from prefect.logging.loggers import get_logger
17
17
  from prefect.results import ResultFactory
18
18
  from prefect.settings import (
19
19
  PREFECT_EXPERIMENTAL_ENABLE_TASK_SCHEDULING,
20
20
  PREFECT_TASK_SCHEDULING_DELETE_FAILED_SUBMISSIONS,
21
21
  )
22
+ from prefect.states import Pending
22
23
  from prefect.task_engine import submit_autonomous_task_to_engine
23
24
  from prefect.task_runners import BaseTaskRunner, ConcurrentTaskRunner
24
25
  from prefect.utilities.asyncutils import asyncnullcontext, sync_compatible
@@ -27,6 +28,12 @@ from prefect.utilities.processutils import _register_signal
27
28
  logger = get_logger("task_server")
28
29
 
29
30
 
31
+ class StopTaskServer(Exception):
32
+ """Raised when the task server is stopped."""
33
+
34
+ pass
35
+
36
+
30
37
  class TaskServer:
31
38
  """This class is responsible for serving tasks that may be executed autonomously by a
32
39
  task runner in the engine.
@@ -47,12 +54,9 @@ class TaskServer:
47
54
  self,
48
55
  *tasks: Task,
49
56
  task_runner: Optional[Type[BaseTaskRunner]] = None,
50
- extra_tags: Optional[Iterable[str]] = None,
51
57
  ):
52
58
  self.tasks: list[Task] = tasks
53
59
  self.task_runner: Type[BaseTaskRunner] = task_runner or ConcurrentTaskRunner()
54
- self.extra_tags: Iterable[str] = extra_tags or []
55
- self.last_polled: Optional[pendulum.DateTime] = None
56
60
  self.started: bool = False
57
61
  self.stopping: bool = False
58
62
 
@@ -97,6 +101,8 @@ class TaskServer:
97
101
  self.started = False
98
102
  self.stopping = True
99
103
 
104
+ raise StopTaskServer
105
+
100
106
  async def _subscribe_to_task_scheduling(self):
101
107
  async for task_run in Subscription(
102
108
  TaskRun,
@@ -104,9 +110,9 @@ class TaskServer:
104
110
  [task.task_key for task in self.tasks],
105
111
  ):
106
112
  logger.info(f"Received task run: {task_run.id} - {task_run.name}")
107
- await self._submit_pending_task_run(task_run)
113
+ await self._submit_scheduled_task_run(task_run)
108
114
 
109
- async def _submit_pending_task_run(self, task_run: TaskRun):
115
+ async def _submit_scheduled_task_run(self, task_run: TaskRun):
110
116
  logger.debug(
111
117
  f"Found task run: {task_run.name!r} in state: {task_run.state.name!r}"
112
118
  )
@@ -148,6 +154,19 @@ class TaskServer:
148
154
  f"Submitting run {task_run.name!r} of task {task.name!r} to engine"
149
155
  )
150
156
 
157
+ state = await propose_state(
158
+ client=get_client(), # TODO prove that we cannot use self._client here
159
+ state=Pending(),
160
+ task_run_id=task_run.id,
161
+ )
162
+
163
+ if not state.is_pending():
164
+ logger.warning(
165
+ f"Aborted task run {task_run.id!r} -"
166
+ f" server returned a non-pending state {state.type.value!r}."
167
+ " Task run may have already begun execution."
168
+ )
169
+
151
170
  self._runs_task_group.start_soon(
152
171
  partial(
153
172
  submit_autonomous_task_to_engine,
@@ -177,14 +196,10 @@ class TaskServer:
177
196
 
178
197
 
179
198
  @sync_compatible
180
- async def serve(
181
- *tasks: Task,
182
- task_runner: Optional[Type[BaseTaskRunner]] = None,
183
- extra_tags: Optional[Iterable[str]] = None,
184
- ):
185
- """Serve the provided tasks so that they may be submitted and executed to the engine.
186
- Tasks do not need to be within a flow run context to be submitted and executed.
187
- Ideally, you should `.submit` the same task object that you pass to `serve`.
199
+ async def serve(*tasks: Task, task_runner: Optional[Type[BaseTaskRunner]] = None):
200
+ """Serve the provided tasks so that their runs may be submitted to and executed.
201
+ in the engine. Tasks do not need to be within a flow run context to be submitted.
202
+ You must `.submit` the same task object that you pass to `serve`.
188
203
 
189
204
  Args:
190
205
  - tasks: A list of tasks to serve. When a scheduled task run is found for a
@@ -205,7 +220,7 @@ async def serve(
205
220
  def yell(message: str):
206
221
  print(message.upper())
207
222
 
208
- # starts a long-lived process that listens scheduled runs of these tasks
223
+ # starts a long-lived process that listens for scheduled runs of these tasks
209
224
  if __name__ == "__main__":
210
225
  serve(say, yell)
211
226
  ```
@@ -220,5 +235,8 @@ async def serve(
220
235
  try:
221
236
  await task_server.start()
222
237
 
223
- except (asyncio.CancelledError, KeyboardInterrupt):
238
+ except StopTaskServer:
239
+ logger.info("Task server stopped.")
240
+
241
+ except asyncio.CancelledError:
224
242
  logger.info("Task server interrupted, stopping...")
@@ -55,7 +55,7 @@ def get_thread_limiter():
55
55
 
56
56
 
57
57
  def is_async_fn(
58
- func: Union[Callable[P, R], Callable[P, Awaitable[R]]]
58
+ func: Union[Callable[P, R], Callable[P, Awaitable[R]]],
59
59
  ) -> TypeGuard[Callable[P, Awaitable[R]]]:
60
60
  """
61
61
  Returns `True` if a function returns a coroutine.
@@ -106,7 +106,7 @@ def dict_to_flatdict(
106
106
 
107
107
 
108
108
  def flatdict_to_dict(
109
- dct: Dict[Tuple[KT, ...], VT]
109
+ dct: Dict[Tuple[KT, ...], VT],
110
110
  ) -> Dict[KT, Union[VT, Dict[KT, VT]]]:
111
111
  """Converts a flattened dictionary back to a nested dictionary.
112
112
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: prefect-client
3
- Version: 2.14.21
3
+ Version: 2.15.0
4
4
  Summary: Workflow orchestration and management.
5
5
  Home-page: https://www.prefect.io
6
6
  Author: Prefect Technologies, Inc.
@@ -31,6 +31,7 @@ Requires-Dist: coolname <3.0.0,>=1.0.4
31
31
  Requires-Dist: croniter <3.0.0,>=1.0.12
32
32
  Requires-Dist: fsspec >=2022.5.0
33
33
  Requires-Dist: graphviz >=0.20.1
34
+ Requires-Dist: greenback >=1.2.0
34
35
  Requires-Dist: griffe >=0.20.0
35
36
  Requires-Dist: httpcore <2.0.0,>=0.15.0
36
37
  Requires-Dist: httpx[http2] !=0.23.2,>=0.23
@@ -46,12 +47,13 @@ Requires-Dist: pyyaml <7.0.0,>=5.4.1
46
47
  Requires-Dist: rich <14.0,>=11.0
47
48
  Requires-Dist: ruamel.yaml >=0.17.0
48
49
  Requires-Dist: sniffio <2.0.0,>=1.3.0
49
- Requires-Dist: starlette <0.33.0,>=0.27.0
50
50
  Requires-Dist: toml >=0.10.0
51
51
  Requires-Dist: typing-extensions <5.0.0,>=4.5.0
52
52
  Requires-Dist: ujson <6.0.0,>=5.8.0
53
53
  Requires-Dist: uvicorn >=0.14.0
54
54
  Requires-Dist: websockets <13.0,>=10.4
55
+ Requires-Dist: itsdangerous
56
+ Requires-Dist: python-multipart >=0.0.7
55
57
  Requires-Dist: importlib-metadata >=4.4 ; python_version < "3.10"
56
58
  Requires-Dist: pendulum <3.0 ; python_version < "3.12"
57
59
  Requires-Dist: pendulum <4,>=3.0.0 ; python_version >= "3.12"
@@ -2,24 +2,24 @@ prefect/.prefectignore,sha256=awSprvKT0vI8a64mEOLrMxhxqcO-b0ERQeYpA2rNKVQ,390
2
2
  prefect/__init__.py,sha256=CbIj8-fhzFJKbvXPadpc73SwIhNXiR_SVzQW4_k52jY,5339
3
3
  prefect/_version.py,sha256=fQguBh1dzT7Baahj504O5RrsLlSyg3Zrx42OpgdPnFc,22378
4
4
  prefect/agent.py,sha256=b557LEcKxcBrgAGOlEDlOPclAkucDj1RhzywBSYxYpI,27487
5
- prefect/context.py,sha256=ZSg6bjqDIBdntnnrPh2xl2DuNGOw1tl0kcelceKq_B8,18105
6
- prefect/engine.py,sha256=OMUsYFhw-RtIOVQE08uyXoTQmFSQ41DED5V7ZFKhGUk,109207
5
+ prefect/context.py,sha256=QK_U3ym-h2i1Y_EOSr4BQeeMN0AIOpG81LQS7k1RiRA,18103
6
+ prefect/engine.py,sha256=ldipCBqndFIuye7q85HHdaL3haqyOnhZjJ5phFH3Fr4,111846
7
7
  prefect/exceptions.py,sha256=84rpsDLp0cn_v2gE1TnK_NZXh27NJtzgZQtARVKyVEE,10953
8
- prefect/filesystems.py,sha256=AXFFsga4JIp06Hsw7970B6Z0s5HlR7UpUfqAFZl11k4,34782
9
- prefect/flow_runs.py,sha256=-XcKLrAZG35PnQxp5ReWDQ97kdgaNEtuB3fdwWZb9T0,2801
8
+ prefect/filesystems.py,sha256=tRmdyn84rapP4qZYIzoR3uN_zA_qUK6tATQ61fFN3Yo,34776
9
+ prefect/flow_runs.py,sha256=-xStqyseNQzCzOQlgHDHRDIGkdsg9WxutbaonRLCgw4,2999
10
10
  prefect/flows.py,sha256=-S8boTTBuqQohcZN5Q3HyQCf9qRoKCRGnaSu9SFJ7Ug,64808
11
- prefect/futures.py,sha256=uqNlykBSRrXQO1pQ6mZWLMqwkFCLhvMLrEFR4eHs--I,12589
11
+ prefect/futures.py,sha256=RaWfYIXtH7RsWxQ5QWTTlAzwtVV8XWpXaZT_hLq35vQ,12590
12
12
  prefect/manifests.py,sha256=xfwEEozSEqPK2Lro4dfgdTnjVbQx-aCECNBnf7vO7ZQ,808
13
13
  prefect/plugins.py,sha256=0C-D3-dKi06JZ44XEGmLjCiAkefbE_lKX-g3urzdbQ4,4163
14
14
  prefect/profiles.toml,sha256=1Tz7nKBDTDXL_6KPJSeB7ok0Vx_aQJ_p0AUmbnzDLzw,39
15
15
  prefect/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
16
  prefect/results.py,sha256=ophLZOhOx_iowhI8xYZ26LabysMSMvUGu_zUp2CWoOk,22236
17
17
  prefect/serializers.py,sha256=sSbe40Ipj-d6VuzBae5k2ao9lkMUZpIXcLtD7f2a7cE,10852
18
- prefect/settings.py,sha256=zYMOJohm-JeC-4KwyBNacgQSbt5FEWOLiBE1hmqGPZk,66328
18
+ prefect/settings.py,sha256=p6Krghi8hwQA8hYRT8s7hzPuxvsPHXNTimhgJsrgEc0,66296
19
19
  prefect/states.py,sha256=-Ud4AUom3Qu-HQ4hOLvfVZuuF-b_ibaqtzmL7V949Ac,20839
20
- prefect/task_engine.py,sha256=299Y6EN1VdCuLtEe6fB7waBzGO2HJRKwVJyH5cXfkUI,2363
20
+ prefect/task_engine.py,sha256=PGutuw9VvsOXwYffW2lPVyqqjKuvWYpRvbP3s6f6B2c,2501
21
21
  prefect/task_runners.py,sha256=HXUg5UqhZRN2QNBqMdGE1lKhwFhT8TaRN75ScgLbnw8,11012
22
- prefect/task_server.py,sha256=9r4bCjAB6oqC-4p0_FqEiao3ouFYKq0yWoaNclaS-mA,8132
22
+ prefect/task_server.py,sha256=Do2i6wUVsd9INOChsQG_olMuKoq12MlJ7NGHw85h6aw,8592
23
23
  prefect/tasks.py,sha256=lDTr2puBBKj53cAcc96rFCyZkeX0VQh83eYGszyyb0I,47049
24
24
  prefect/variables.py,sha256=57h-cJ15ZXWrdQiOnoEQmUVlAe59hmIaa57ZcGNBzao,914
25
25
  prefect/_internal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -29,21 +29,21 @@ prefect/_internal/compatibility/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm
29
29
  prefect/_internal/compatibility/deprecated.py,sha256=m70ApROjRiFzW4j0Hoc8W8ujE69Cm6q0dxvcgK-3JHs,6846
30
30
  prefect/_internal/compatibility/experimental.py,sha256=bQ2ia6MjgIu1SAWpkGVza87wSz5aTo58X_z3JawqleQ,7442
31
31
  prefect/_internal/concurrency/__init__.py,sha256=ncKwi1NhE3umSFGSKRk9wEVKzN1z1ZD-fmY4EDZHH_U,2142
32
- prefect/_internal/concurrency/api.py,sha256=I6OHx53rP7f8GI_O-VHLook1wJfM5Wbe6i2OlAcEcjs,8765
33
- prefect/_internal/concurrency/calls.py,sha256=DZeFwSh-4cy4p0fC3Wga7O7Tl0b_aXmmzZVeENoY93M,14214
34
- prefect/_internal/concurrency/cancellation.py,sha256=m-KbWpibksAtdqYxL5dIFhIj7FFfFFT4TvmM0E1m2J4,17954
35
- prefect/_internal/concurrency/event_loop.py,sha256=xqE94_hk8ElWSo6b6if_uP-OXV2_wjGYIO77wxWRknk,2594
32
+ prefect/_internal/concurrency/api.py,sha256=kumsOi7ZwtrLSi5Sp0-x9jJjUj63Fyy9qRFTulsjKLE,10211
33
+ prefect/_internal/concurrency/calls.py,sha256=H4ok2X-gEIYTKFZj2V5wY2PuEhAQqnv0twFIFK9jSxc,14606
34
+ prefect/_internal/concurrency/cancellation.py,sha256=YLPTpD4u9H90ovSUIeYKpxrkndxXeOi7G0Jf5LC1LgY,17994
35
+ prefect/_internal/concurrency/event_loop.py,sha256=rOxUa7e95xP4ionH3o0gRpUzzG6aZMQUituLpMTvTFo,2596
36
36
  prefect/_internal/concurrency/inspection.py,sha256=GWFoSzgs8bZZGNN-Im9sQ-0t0Dqdn8EbwPR1UY3Mhro,3452
37
37
  prefect/_internal/concurrency/primitives.py,sha256=kxCPD9yLtCeqt-JIHjevL4Zt5FvrF_Bam-Ucf41FX6k,2608
38
38
  prefect/_internal/concurrency/services.py,sha256=Xv3YNAwt8tORLL_1GPVzUtjCJd1I0wnJGIf2fM5q1OQ,11712
39
- prefect/_internal/concurrency/threads.py,sha256=3QZCQFv9_Ac42HkstsCWs0TXpee9Pe6drK5z2FMXPaM,7735
39
+ prefect/_internal/concurrency/threads.py,sha256=tiTghFhI0SC3CYfzP5ccViFUnlOKsRUfWygcUCNpNMg,7757
40
40
  prefect/_internal/concurrency/waiters.py,sha256=DXTD_bbVEUhcTplYQFX8mGmL6nsqJGEDfvS0TmHmIQk,9475
41
41
  prefect/_internal/pydantic/__init__.py,sha256=ZTFHClaJIxIHpFFIHrZD1rZbWrY-1yyvAvLvwy1IQCk,423
42
42
  prefect/_internal/pydantic/schemas.py,sha256=tsRKq5yEIgiRbWMl3BPnbfNaKyDN6pq8WSs0M8SQMm4,452
43
- prefect/_internal/pydantic/v2_schema.py,sha256=1wuLA601M3ESQjtaDTZ6eih8fpogqO5ismbi2AYC8vQ,3483
43
+ prefect/_internal/pydantic/v2_schema.py,sha256=fySqjMCFoJpRs7wN6c5qoVKePbDbWcXYUoYOs5eFzL0,3485
44
44
  prefect/_internal/pydantic/v2_validated_func.py,sha256=44I4o8jjiS7TYep-E6UYMwjpYH5F1WwJFajW81A3wts,3823
45
45
  prefect/_internal/pydantic/annotations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
46
- prefect/_internal/pydantic/annotations/pendulum.py,sha256=hfqBKtpQJq17BjbZoCCVHn_dU7bvJf9Oi_5tNN3ZZeY,2626
46
+ prefect/_internal/pydantic/annotations/pendulum.py,sha256=rWT6zzCtIqvK2_EuAkMt73ZzAvdE5tF2104e0-tIaa4,2625
47
47
  prefect/_internal/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
48
48
  prefect/_internal/schemas/bases.py,sha256=hl6iBar9QfVQo7I7nJR6wnyL_KTrHeRqcWfQ7QbI8_w,9976
49
49
  prefect/_internal/schemas/fields.py,sha256=GMZeLPvrSRleomgKi73AyNKg8aqbh7ezWqGkreLVnMs,1385
@@ -51,63 +51,98 @@ prefect/_internal/schemas/serializers.py,sha256=G_RGHfObjisUiRvd29p-zc6W4bwt5rE1
51
51
  prefect/_internal/schemas/transformations.py,sha256=PRMMso1TlRYSdRC7JvvddxHfkECbjxx5ienyLk93wyM,3730
52
52
  prefect/_internal/schemas/validators.py,sha256=52KA5iqnIbnFtBDygghmy6h06SWAaS0qrmlBtQp1unc,1243
53
53
  prefect/_vendor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
54
- prefect/_vendor/fastapi/__init__.py,sha256=V35ESeBEwy1Lt6Cww96Iur2-HGWcKpCxF5CKPjEW2y8,1080
55
- prefect/_vendor/fastapi/applications.py,sha256=kqKBzHRUKKYLGzFkp1eUl4I8XypTPP58xoSxik7h_SA,40793
56
- prefect/_vendor/fastapi/background.py,sha256=HtN5_pJJrOdalSbuGSMKJAPNWUU5h7rY_BXXubu7-IQ,76
57
- prefect/_vendor/fastapi/concurrency.py,sha256=h7ZhZG8cEiVx6an1txcB2RKpjW6_xmHwFo9E3vUiMQA,1468
58
- prefect/_vendor/fastapi/datastructures.py,sha256=oW6xuU0C-sBwbcyXI-MlBO0tSS4BSPB2lYUa1yCw8-A,1905
59
- prefect/_vendor/fastapi/encoders.py,sha256=N5bmAa1VZbm_3qJSvti9yLmkA8lCMMJmpQQgpOLu9M4,6154
60
- prefect/_vendor/fastapi/exception_handlers.py,sha256=DHTApvMErxtianuH0cZZqYkf1x4fJhY2emXYaFqaPZk,1409
61
- prefect/_vendor/fastapi/exceptions.py,sha256=JIrjaxe-Q0he4hg-L2l29p4IiDIJYkYt-raPwvhGO38,1418
54
+ prefect/_vendor/fastapi/__init__.py,sha256=u-zfck662O4-Bsz91pZM53R53pVmdEQ1LUgf2hZenb0,1096
55
+ prefect/_vendor/fastapi/applications.py,sha256=72zqRql-QLOjk68Wmnx4F1aW9_UcDXZ-lf-COP3aL1c,40983
56
+ prefect/_vendor/fastapi/background.py,sha256=6rf5_wcl7kiiI7iOEKDD8Ey8-cJcv8jIWEKRuN5K2nI,93
57
+ prefect/_vendor/fastapi/concurrency.py,sha256=47U7EAkZasRzyzJ4x7EFZgrx_XYoDHFXLyUmCgSG3EQ,1534
58
+ prefect/_vendor/fastapi/datastructures.py,sha256=gGHL3nZXl8hQwzSAiSFpQtVGE06cw8J64VIkNlILBLA,2026
59
+ prefect/_vendor/fastapi/encoders.py,sha256=E2VIrQ8UYy6WXu12R791JJBCjWVV7lA003jcVWdzmGM,6155
60
+ prefect/_vendor/fastapi/exception_handlers.py,sha256=xDNw1q-x7fpMpUllGoC_NrzH5Id8goMnqUmDhlQVWU8,1486
61
+ prefect/_vendor/fastapi/exceptions.py,sha256=131GbKBhoKJNvkE3k2-IvKye6xH-fvNaJ20Q9AZNCoY,1459
62
62
  prefect/_vendor/fastapi/logger.py,sha256=I9NNi3ov8AcqbsbC9wl1X-hdItKgYt2XTrx1f99Zpl4,54
63
63
  prefect/_vendor/fastapi/param_functions.py,sha256=BLvSfhJqiViP-_zYQ7BL_t9IARf4EJbKZSikDNsOkfw,9130
64
64
  prefect/_vendor/fastapi/params.py,sha256=UBEVQ_EK9iIbF3DOJXfH2zcO27uvf5NeRdslMOEtIEA,13350
65
- prefect/_vendor/fastapi/requests.py,sha256=zayepKFcienBllv3snmWI20Gk0oHNVLU4DDhqXBb4LU,142
66
- prefect/_vendor/fastapi/responses.py,sha256=on95e4CfSRyNz7MEjqFuzsP-eW8kHWTxEl_Z-Vzb7lA,1242
67
- prefect/_vendor/fastapi/routing.py,sha256=KjeI5Jr6BplMqqIK_jz2HF9StcKRA44ooXq2TUzL-kM,56943
68
- prefect/_vendor/fastapi/staticfiles.py,sha256=iirGIt3sdY2QZXd36ijs3Cj-T0FuGFda3cd90kM9Ikw,69
69
- prefect/_vendor/fastapi/templating.py,sha256=4zsuTWgcjcEainMJFAlW6-gnslm6AgOS1SiiDWfmQxk,76
70
- prefect/_vendor/fastapi/testclient.py,sha256=nBvaAmX66YldReJNZXPOk1sfuo2Q6hs8bOvIaCep6LQ,66
65
+ prefect/_vendor/fastapi/requests.py,sha256=KsGwp86w95S-0wgx4pL-T4i9M_z-_KlMzX43rdUg9YU,183
66
+ prefect/_vendor/fastapi/responses.py,sha256=M67RzoU0K91ojgHjvDIDK3iyBAvA9YKPsUJIP4FtxtY,1381
67
+ prefect/_vendor/fastapi/routing.py,sha256=Kz1WttDcSqHkt1fW9_UmkZG-G0noRY3FAStkfw_VUNE,57083
68
+ prefect/_vendor/fastapi/staticfiles.py,sha256=pHK1gf1T43AK-8C0ORNuVX-Mby7F8hjdVQfWbcIzn0A,85
69
+ prefect/_vendor/fastapi/templating.py,sha256=vOtXhLo80elrrnxBLS1ugnS1IpGSDGv6fbcJknGL9Sc,93
70
+ prefect/_vendor/fastapi/testclient.py,sha256=Z-RXcaVDim8ZMEOTKjQ-cXk58kcgBuDjTKsa3v_-N-A,82
71
71
  prefect/_vendor/fastapi/types.py,sha256=r6MngTHzkZOP9lzXgduje9yeZe5EInWAzCLuRJlhIuE,118
72
- prefect/_vendor/fastapi/utils.py,sha256=SwA6JEOdy3iCrraYP6wuntuxBKWtb8sx1bvuwIdRayI,8144
73
- prefect/_vendor/fastapi/websockets.py,sha256=419uncYObEKZG0YcrXscfQQYLSWoE10jqxVMetGdR98,222
72
+ prefect/_vendor/fastapi/utils.py,sha256=P0do9cvvaaCLYwtbdu0whmE9LsOjMGJaVboV0_41goM,8142
73
+ prefect/_vendor/fastapi/websockets.py,sha256=9KbSW68WAHa08DNJDzXuxjnw0MFM32YCoebGC2CxXAI,288
74
74
  prefect/_vendor/fastapi/dependencies/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
75
75
  prefect/_vendor/fastapi/dependencies/models.py,sha256=8MYR9xGAEpB0aecTirS4CrjdUYeQxL92Jjz9lo1qVUg,2643
76
- prefect/_vendor/fastapi/dependencies/utils.py,sha256=lclZUk7Xz43y_4xzLCYOFikF3ZN-Ulhlqt7MdYsWv7Q,31850
77
- prefect/_vendor/fastapi/middleware/__init__.py,sha256=oQDxiFVcc1fYJUOIFvphnK7pTT5kktmfL32QXpBFvvo,58
78
- prefect/_vendor/fastapi/middleware/asyncexitstack.py,sha256=O-LzOt9hVuRF51h-mbDiQHDl56KaMfXanuwCN6HpWZc,1051
79
- prefect/_vendor/fastapi/middleware/cors.py,sha256=ynwjWQZoc_vbhzZ3_ZXceoaSrslHFHPdoM52rXr0WUU,79
80
- prefect/_vendor/fastapi/middleware/gzip.py,sha256=xM5PcsH8QlAimZw4VDvcmTnqQamslThsfe3CVN2voa0,79
81
- prefect/_vendor/fastapi/middleware/httpsredirect.py,sha256=rL8eXMnmLijwVkH7_400zHri1AekfeBd6D6qs8ix950,115
82
- prefect/_vendor/fastapi/middleware/trustedhost.py,sha256=eE5XGRxGa7c5zPnMJDGp3BxaL25k5iVQlhnv-Pk0Pss,109
83
- prefect/_vendor/fastapi/middleware/wsgi.py,sha256=Z3Ue-7wni4lUZMvH3G9ek__acgYdJstbnpZX_HQAboY,79
76
+ prefect/_vendor/fastapi/dependencies/utils.py,sha256=34Gp0CyaqfavsLmxoiR93QK-DKYLfsD3PZizC7mMM1Q,31968
77
+ prefect/_vendor/fastapi/middleware/__init__.py,sha256=mkq7YvZiveQy8orRbAgcAXI3XlS0mdoMamJ9TVR2V1Y,74
78
+ prefect/_vendor/fastapi/middleware/asyncexitstack.py,sha256=mRZei6p2QXl1VtXjwU2wszvQ_ynIsmxHi2Qv25tdFN4,1067
79
+ prefect/_vendor/fastapi/middleware/cors.py,sha256=pvHLYPxinYiUdKFZ4YkSWcp5sUcwfCSLS5fFtVaoTk4,96
80
+ prefect/_vendor/fastapi/middleware/gzip.py,sha256=8AYhl5Hyta51OFfpkrXZirsXfdpTBTQHXhCNxJCsCwg,96
81
+ prefect/_vendor/fastapi/middleware/httpsredirect.py,sha256=bxL6-PfSCzPT4vh25VzdIDfg8DPPjRmazNJGVzPX8zI,131
82
+ prefect/_vendor/fastapi/middleware/trustedhost.py,sha256=p1QHlXVXqsYg--yffzqTP_xkZfvwDzrH4T_Lt8YD7JU,125
83
+ prefect/_vendor/fastapi/middleware/wsgi.py,sha256=heD0VZHeOZjRcehzZ0E-YG_2fejt3xNVdPtKQy8qHmc,96
84
84
  prefect/_vendor/fastapi/openapi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
85
85
  prefect/_vendor/fastapi/openapi/constants.py,sha256=mWxYBjED6PU-tQ9X227Qkq2SsW2cv-C1jYFKt63xxEs,107
86
- prefect/_vendor/fastapi/openapi/docs.py,sha256=--ecDkAnyhzbj-ohcMDRbenWAFpVuSjfkFNH1OMJwtA,6548
86
+ prefect/_vendor/fastapi/openapi/docs.py,sha256=7cumyafspKWgu8e7MMkcENAkK4NIDAEwJ6-3DWCHSaY,6564
87
87
  prefect/_vendor/fastapi/openapi/models.py,sha256=PJe0fD7ws4yJo2L_kKHaZW1-l6cT1P6RdliFEKePjkQ,15179
88
- prefect/_vendor/fastapi/openapi/utils.py,sha256=okGltQS6Z8C3-e4i5mmR7llCV0pFHbRLsunOsPfXKQc,20171
88
+ prefect/_vendor/fastapi/openapi/utils.py,sha256=1AZrq1TkzYPT4TEK3ZZI0C-SWgGHwWtBKo__IlKOX1Y,20219
89
89
  prefect/_vendor/fastapi/security/__init__.py,sha256=bO8pNmxqVRXUjfl2mOKiVZLn0FpBQ61VUYVjmppnbJw,881
90
- prefect/_vendor/fastapi/security/api_key.py,sha256=ZDkE6AAbHcrXjI2TT6aiMnhl2ble4jK66h16FQe5bDs,2971
90
+ prefect/_vendor/fastapi/security/api_key.py,sha256=3YlTy33ta_pKiAP31q8_XYbHUkKMZZ1lpJYxSyZfMX8,3019
91
91
  prefect/_vendor/fastapi/security/base.py,sha256=WLfxOrnUY901m28lVgrKlqEdXJk004rtaGgULaIn9A0,157
92
- prefect/_vendor/fastapi/security/http.py,sha256=BZKXdl0a9OAFpWREjGbxFYv_6dg0T04anhD76Q-DvIQ,6170
93
- prefect/_vendor/fastapi/security/oauth2.py,sha256=NVFPVJqt8Is9xO-14drJ3T-cbzwAj9OXkXCOJj6oIPQ,8456
94
- prefect/_vendor/fastapi/security/open_id_connect_url.py,sha256=UlmprZHQLKbo1Zh2MBlIu11L4sY6TXq1aPjDBlC9Ct8,1173
92
+ prefect/_vendor/fastapi/security/http.py,sha256=bS5EAmWh7ZyGqSk7AhDbjMvlZadeobBN_2X95Qw_0U0,6202
93
+ prefect/_vendor/fastapi/security/oauth2.py,sha256=0Ikka5HLd94E2sstJvorgVBjdjhA-4vLCcx-u2xCU3U,8488
94
+ prefect/_vendor/fastapi/security/open_id_connect_url.py,sha256=Jejw8NYrz6F2xF97_mpJISm6py4eNCtPL5vTkmUidY4,1221
95
95
  prefect/_vendor/fastapi/security/utils.py,sha256=bd8T0YM7UQD5ATKucr1bNtAvz_Y3__dVNAv5UebiPvc,293
96
+ prefect/_vendor/starlette/__init__.py,sha256=6K931DiWIOR94oP_7w9oZPyA0wEqkdgU1lkcLFyRTMU,23
97
+ prefect/_vendor/starlette/_compat.py,sha256=pcaBiAKr9ON7PFVg780yWlgH88AYXTGfcyV6c3awVY4,1148
98
+ prefect/_vendor/starlette/_exception_handler.py,sha256=O6Byz56p7qS04NhM6uD5YjXPPBqyjqb3JB5TD9BiYGY,2611
99
+ prefect/_vendor/starlette/_utils.py,sha256=uX7TvtjqokeCSgi4sRPNTGXAe6C6gGsUZ4o020_iIYM,2349
100
+ prefect/_vendor/starlette/applications.py,sha256=UIakzsIgaWQ7n9W2l2_aj3yA3a654OErJY0NJTFV0-M,10812
101
+ prefect/_vendor/starlette/authentication.py,sha256=seBMg4llfCVWbsUtXokoPJBoSiQLspiajB6orsj124M,5424
102
+ prefect/_vendor/starlette/background.py,sha256=-9F5b7kXhFr9Sfac1kiXW69FajfjFr3axT49Bt5wY8c,1291
103
+ prefect/_vendor/starlette/concurrency.py,sha256=QNOhq_ddZVvPgIcQbfbkQSD68XDW1gT_li9BbVNixkQ,1795
104
+ prefect/_vendor/starlette/config.py,sha256=XOiXVP14_IyZzGVRCnGTGPnLlzU7g6WCBzvKgvRH3hU,4657
105
+ prefect/_vendor/starlette/convertors.py,sha256=Q7pKgRyKgXMMIl8xU9foy5mu-EaLzvynYFlKUSHThAo,2254
106
+ prefect/_vendor/starlette/datastructures.py,sha256=AyApp3jfD9muXBn8EVbuAVk6ZhCDYKovRO70w0Gvtnw,23188
107
+ prefect/_vendor/starlette/endpoints.py,sha256=00KnI8grT2xxv1jERCvAgqwVxRDOo8hrqpFHnKow9xs,5319
108
+ prefect/_vendor/starlette/exceptions.py,sha256=ODmYfjgNKWAZwfV8TDVepoEwhv1Kl92KvvwMvEJ04AA,1840
109
+ prefect/_vendor/starlette/formparsers.py,sha256=aNoQl0CPI7pYnvae2k0KB2jNnv6mQJL-N2FuhRhPLW4,10450
110
+ prefect/_vendor/starlette/requests.py,sha256=dytpLA1l9oVb-u98i4caDI1z4-XtPCe1jzjFajlQWa8,10899
111
+ prefect/_vendor/starlette/responses.py,sha256=1l36hyZeTXWYCQ8dYCo-eM_I6KyGuq_qUdtM9GBT3EA,12565
112
+ prefect/_vendor/starlette/routing.py,sha256=Y0uiRXBQ0uRWs1O63qFD6doqKeh-KhqhuiHU5ovodQs,35696
113
+ prefect/_vendor/starlette/schemas.py,sha256=TkdT44GEK33J4GrSQfMoXXyAqFcFRA1q4BNM9nKW-lw,5315
114
+ prefect/_vendor/starlette/staticfiles.py,sha256=YMNSlVSd8s9DLeZSwB607cFezRLCqDbQyksN8ggk-hU,9003
115
+ prefect/_vendor/starlette/status.py,sha256=lv40V7igYhk_ONySJzUzQ4T3gTgnvNLCOb846ZUONSE,6086
116
+ prefect/_vendor/starlette/templating.py,sha256=sOHUbxDT9PV_2yiZdhmE2NuJzLBLP0IUY0nM88T5sf8,9065
117
+ prefect/_vendor/starlette/testclient.py,sha256=kAbFkaEZkaBLEIBBlbz8b2ei76yjACvb9HtSxFIJBfE,29928
118
+ prefect/_vendor/starlette/types.py,sha256=GV42Vulsf4gkrP2KlmTlQRtg2ftSDyFQWnuplpdD7bY,1129
119
+ prefect/_vendor/starlette/websockets.py,sha256=o6ThDsCIFj5bZDlI5GYPH76ZQjIh_tz_Xpq1TGXdw1w,7473
120
+ prefect/_vendor/starlette/middleware/__init__.py,sha256=eq7IMsjLes9Z0NAhRPNUc5eO-QG9WMOwZ5Gx-lST200,558
121
+ prefect/_vendor/starlette/middleware/authentication.py,sha256=_JbkMAd-02LwiCxeD4k6AYuOXObnajTrQCaISXu6enc,1849
122
+ prefect/_vendor/starlette/middleware/base.py,sha256=ukFfSHY0-Hb20LHFWS6vsYG92NGa8yLX7q2wXfqfFW8,8891
123
+ prefect/_vendor/starlette/middleware/cors.py,sha256=4XAVMOzzyklcucYdXNurIA--ghwRsLbLk13jiIraUXM,7123
124
+ prefect/_vendor/starlette/middleware/errors.py,sha256=OLYupfLJDx7TWSe0GykrPug5gzqWsAUcpbJh3JYbPVM,8035
125
+ prefect/_vendor/starlette/middleware/exceptions.py,sha256=XcAKEWzFLTvekDAoQHZIdNH6iFAsPjBPN0S4S6lFNcg,2917
126
+ prefect/_vendor/starlette/middleware/gzip.py,sha256=OEZcC4VM3RyKCNgKY-JWYBi6QESC726bzp7h9IQ-wgA,4539
127
+ prefect/_vendor/starlette/middleware/httpsredirect.py,sha256=NY9QDgsRUeoyxFZbepIx82E4LdRAHXWBZDw3H31RKrw,896
128
+ prefect/_vendor/starlette/middleware/sessions.py,sha256=ETBQZGQ5gOyfSPpi2Cv2ugEmHxSx4UFuYbsBEJ0O5SI,3636
129
+ prefect/_vendor/starlette/middleware/trustedhost.py,sha256=fDi67anj2a7MGviC0RAWhp_tn-VgUPFaxxyKiwLCA6A,2272
130
+ prefect/_vendor/starlette/middleware/wsgi.py,sha256=Ewk1cVDkcoXLVI2ZF0FEZLZCwCDjc0H7PnvWLlxurVY,5266
96
131
  prefect/blocks/__init__.py,sha256=BUfh6gIwA6HEjRyVCAiv0he3M1zfM-oY-JrlBfeWeY8,182
97
132
  prefect/blocks/abstract.py,sha256=Q-Pcbg_RbJNxdFITWg3zsKFVwXdcmbX1jBQwZqWSGCU,15633
98
- prefect/blocks/core.py,sha256=V6-0QpjJSkLHI8OgQs8_kYCS2Srvol8K3YAj1LHqopA,43500
133
+ prefect/blocks/core.py,sha256=PGHU-EyXcBtHei5-KhvmMak3xLoine7Nn8BNSNvR_Yw,43498
99
134
  prefect/blocks/fields.py,sha256=ANOzbNyDCBIvm6ktgbLTMs7JW2Sf6CruyATjAW61ks0,1607
100
135
  prefect/blocks/kubernetes.py,sha256=SrvRIj9YY1jyuE997y71U4xvMfRZDr_9BQwoE98MbZQ,3866
101
- prefect/blocks/notifications.py,sha256=wiXpntlZmTTYWGNqYwyNg1XB1aDDtoCJkwVQLhT0sg8,26792
136
+ prefect/blocks/notifications.py,sha256=xxv9CEm2O_PPOEpKMyt22Wab6eMT75OgpGBUei3WLpI,26766
102
137
  prefect/blocks/system.py,sha256=Nlp-3315Hye3FJ5uhDovSPGBIEKi5UbCkAcy3hDxhKk,3057
103
138
  prefect/blocks/webhook.py,sha256=hhyWck7mAPfD_12bl40dJedNC9HIaqs7z13iYcZZ14o,2005
104
139
  prefect/client/__init__.py,sha256=yJ5FRF9RxNUio2V_HmyKCKw5G6CZO0h8cv6xA_Hkpcc,477
105
- prefect/client/base.py,sha256=19VMAsq6Wvp1ZUwAb2OAT4pMQ0CFWsHBwqY3kZfPR2w,12209
106
- prefect/client/cloud.py,sha256=vlGivNaOIS0YNc0OnVKEx2L88SRU8pal8GYMoPHXyrU,3955
140
+ prefect/client/base.py,sha256=yUIiMH3qvm0esS5H22LwZGXZO2Vv-9MdbRu1yqMNOwg,12225
141
+ prefect/client/cloud.py,sha256=jResyTjMNt69x_VoqUyoY6K0kmO9yZL6PyAvxbsJuYk,3971
107
142
  prefect/client/collections.py,sha256=I9EgbTg4Fn57gn8vwP_WdDmgnATbx9gfkm2jjhCORjw,1037
108
143
  prefect/client/constants.py,sha256=Z_GG8KF70vbbXxpJuqW5pLnwzujTVeHbcYYRikNmGH0,29
109
- prefect/client/orchestration.py,sha256=i8vGi2x-soE_POndRFRlsq5EoIn2bRHBS_D8QsNkzNg,103706
110
- prefect/client/subscriptions.py,sha256=L64hNHYXLr3a5hLVB5OxfWF28fehGw5ZN8Ovsmzgd9s,2922
144
+ prefect/client/orchestration.py,sha256=Vbhrb4xIqY8xaLojLy8mmDrvIVjVi4M9gp9zIOX1XxM,103722
145
+ prefect/client/subscriptions.py,sha256=QuNOcvyPZRniXVybr8aGGOK3fXgoA0gWluYMs2W_akI,2795
111
146
  prefect/client/utilities.py,sha256=ejALWrVYuqW-A2zKJkAuRXDkhZ5e8fsiEkn-wI1tzF0,1998
112
147
  prefect/client/schemas/__init__.py,sha256=KlyqFV-hMulMkNstBn_0ijoHoIwJZaBj6B1r07UmgvE,607
113
148
  prefect/client/schemas/actions.py,sha256=R4MUsb_1GuEsYLoLnU8jIfCBobJJFbDydaZE24mkqTc,25206
@@ -120,11 +155,11 @@ prefect/concurrency/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
120
155
  prefect/concurrency/asyncio.py,sha256=S7FXJmzva4DDS3sOMBfWhM1Kimwu7zdEAqSPsM6qkr0,3055
121
156
  prefect/concurrency/common.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
122
157
  prefect/concurrency/events.py,sha256=E_SCDHmfKr8lYUqVro_kLzqCY_cOctnjtnIAv-IPAs8,1770
123
- prefect/concurrency/services.py,sha256=xpSKtu0szOJgnDIILz5IHo24p6c5AlyWRjthqOi-vf0,2506
158
+ prefect/concurrency/services.py,sha256=LQQXBFNUQTlAnHbdrr6GYcEExpGSaQzb-ZiqKk4rQPk,2522
124
159
  prefect/concurrency/sync.py,sha256=AChhkA6hykgnnPmIeOp87jauLL0p_lrSwMwUoeuYprI,2148
125
160
  prefect/deployments/__init__.py,sha256=gPxKvTDTQTR9e8eAxxGkbvhjsY_zYHJ3VgROGQmZOVI,404
126
161
  prefect/deployments/base.py,sha256=XPr12-jKnmHKxFsHx4CR0ws2ho_eTKPLBwBw6HkPn3o,20439
127
- prefect/deployments/deployments.py,sha256=LOC34oeS4zelb4P05NNwtFhdGcLDzT_2wpykaFtmdws,36281
162
+ prefect/deployments/deployments.py,sha256=D62Pfz-SNnB_8HcKOlXRqsIDDifvhrhbPe_y9-a4jvk,36281
128
163
  prefect/deployments/runner.py,sha256=AnDdkYW7xrjiOLhkMhnN9-j7fxdRxJuVpOGxWj1c4RM,38032
129
164
  prefect/deployments/steps/__init__.py,sha256=3pZWONAZzenDszqNQT3bmTFilnvjB6xMolMz9tr5pLw,229
130
165
  prefect/deployments/steps/core.py,sha256=Mg2F5GBJyO-jBAAP7PGtIu1sZgNsvmw5Jn5Qj-bUlgk,6617
@@ -134,7 +169,7 @@ prefect/deprecated/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuF
134
169
  prefect/deprecated/data_documents.py,sha256=mGxhPHy7nm8xqLnnoo5oUxcm2MjcZxwEE6boD2EwJgg,9642
135
170
  prefect/events/__init__.py,sha256=2tQCrDogstn-w65lKyf9ahu_wbWhPaaDK_oxH2v1558,173
136
171
  prefect/events/actions.py,sha256=wYc52xin_CLrNZaou05FdGdLZ5VEhT2lKM_k-MQEJ34,1398
137
- prefect/events/clients.py,sha256=AfJeV-FCObvydutrSFD8JLrMVwtDJsL3WN0nbopzA3s,13688
172
+ prefect/events/clients.py,sha256=6LK82U-ux99ddhb4mc7_JA1wK79yNpikf0Ln6NdDDBE,13704
138
173
  prefect/events/filters.py,sha256=vSWHGDCCsi_znQs3gZomCxh-Q498ukn_QHJ7H8q16do,6922
139
174
  prefect/events/instrument.py,sha256=uNiD7AnkfuiwTsCMgNyJURmY9H2tXNfLCb3EC5FL0Qw,3805
140
175
  prefect/events/related.py,sha256=N0o19kTlos1V4L4AgO79Z_k06ZW9bfjSH8Xa9h7lugg,6746
@@ -143,9 +178,9 @@ prefect/events/utilities.py,sha256=gUEJA_kVuYASCqDpGX0HwDW0yczMX0AdgmxXbxhzWbM,2
143
178
  prefect/events/worker.py,sha256=Z6MZmcCyXZtWi4vEtnFyvnzIEBW7HD14lEH1Crye3gY,2716
144
179
  prefect/infrastructure/__init__.py,sha256=Fm1Rhc4I7ZfJePpUAl1F4iNEtcDugoT650WXXt6xoCM,770
145
180
  prefect/infrastructure/base.py,sha256=BvgY2HY1u_JEeb6u2HhnN7k86aicfOTheD-urU7bcTI,10196
146
- prefect/infrastructure/container.py,sha256=_CbrVW2ZYmkrc-jLNNuZyblmmX8uNVYUKHeTZWH0jcg,30914
147
- prefect/infrastructure/kubernetes.py,sha256=Jsg_86MjR3OEYm_nDh3TVzbDCBeba0YBoiP0ejGw0AQ,36553
148
- prefect/infrastructure/process.py,sha256=xkWEMxUWnyaAD37eqdbcgL7tzmum_ctFz802RHhGfag,11283
181
+ prefect/infrastructure/container.py,sha256=s3RiUW2ZYguuGo3qIYI3qRT11KJcvKBWF-P7VpYlUaw,30912
182
+ prefect/infrastructure/kubernetes.py,sha256=_6r1wuOrITaJ0NmzqIaYy0SiQBEx5Ka_qGpMP19_fAA,36513
183
+ prefect/infrastructure/process.py,sha256=fN-cz1Yre2CFPnjF9TmQQBmz6Pv1FEjVGRlySlnWelY,11281
149
184
  prefect/infrastructure/provisioners/__init__.py,sha256=LXkoifKIqgdaoAtseF1bqKNQYVRCmREvME-89Aops9g,1616
150
185
  prefect/infrastructure/provisioners/cloud_run.py,sha256=kqk8yRZ4gfGJLgCEJL8vNYvRyONe2Mc4e_0DHeEb0iM,17658
151
186
  prefect/infrastructure/provisioners/container_instance.py,sha256=KgJ6-vbq32VLCBiYgrCeG68wa6DfJvA2AmJHCeOY5q8,41231
@@ -153,10 +188,10 @@ prefect/infrastructure/provisioners/ecs.py,sha256=qFHRLMuU0HduCEcuU0ZiEhnKeGFnk1
153
188
  prefect/infrastructure/provisioners/modal.py,sha256=mLblDjWWszXXMXWXYzkR_5s3nFFL6c3GvVX-VmIeU5A,9035
154
189
  prefect/input/__init__.py,sha256=TPJ9UfG9_SiBze23sQwU1MnWI8AgyEMNihotgTebFQ0,627
155
190
  prefect/input/actions.py,sha256=yITDUOsnNyslJKDinae6zKcX_1_3QMw8SFu7aTynjPM,3894
156
- prefect/input/run_input.py,sha256=qVb8hPcM9fazrMLT7XDHNFAB-CD6fQvnwvrDod3aOdo,18022
191
+ prefect/input/run_input.py,sha256=oj17jNtFAbn8qy91xr8jNrXqCIaA--Vn-hn6rYd5AZs,18023
157
192
  prefect/logging/__init__.py,sha256=EnbHzgJE_-e4VM3jG5s7MCABYvZ7UGjntC6NfSdTqLg,112
158
193
  prefect/logging/configuration.py,sha256=Qy0r7_j7b8_klsBEn2_f-eSrTQ_EzaBrFwGnwdtgcK8,3436
159
- prefect/logging/formatters.py,sha256=pJKHSo_D_DXXor8R7dnPBCOSwQMhRKfP-35UHdIcOyE,4081
194
+ prefect/logging/formatters.py,sha256=GaHYEgUSL-oJV47RHJ8gWoD7C1Rdpx4VeXhPwap1j-k,4082
160
195
  prefect/logging/handlers.py,sha256=zypWVA9EbaKMimRnZWxjmYYmZE04pB7OP5zKwkrOYHQ,10685
161
196
  prefect/logging/highlighters.py,sha256=BpSXOy0n3lFVvlKWa7jC-HetAiClFi9jnQtEq5-rgok,1681
162
197
  prefect/logging/loggers.py,sha256=s_9w37JRmKzEXCseSPHrGMGxAWTWOjmZEKI4S5kZ60A,9097
@@ -169,7 +204,7 @@ prefect/packaging/orion.py,sha256=ctWh8s3UztYfOTsZ0sfumebI0dbNDOTriDNXohtEC-k,19
169
204
  prefect/packaging/serializers.py,sha256=1x5GjcBSYrE-YMmrpYYZi2ObTs7MM6YEM3LS0e6mHAk,6321
170
205
  prefect/runner/__init__.py,sha256=d3DFUXy5BYd8Z4cppNN_6RTSddmr-KfnQ5Yw5vh8WL8,96
171
206
  prefect/runner/runner.py,sha256=naKqAUl5cboL0xedksuNWgabAzAAy-AxNcL25N_C8KQ,47326
172
- prefect/runner/server.py,sha256=zSUyzBgijEl0nwFGBtBH6CIUjFBNfeaWKB1WkyRvVqw,10649
207
+ prefect/runner/server.py,sha256=xPEgn3NDAWUuXcv62fkr-xV7Bogz9BPMXzsNM6ryDMQ,10647
173
208
  prefect/runner/storage.py,sha256=iZey8Am51c1fZFpS9iVXWYpKiM_lSocvaJEOZVExhvA,22428
174
209
  prefect/runner/submit.py,sha256=w53VdsqfwjW-M3e8hUAAoVlNrXsvGuuyGpEN0wi3vX0,8537
175
210
  prefect/runner/utils.py,sha256=G8qv6AwAa43HcgLOo5vDhoXna1xP0HlaMVYEbAv0Pck,3318
@@ -182,13 +217,13 @@ prefect/server/api/static/prefect-logo-mark-gradient.png,sha256=ylRjJkI_JHCw8VbQ
182
217
  prefect/software/__init__.py,sha256=cn7Hesmkv3unA3NynEiyB0Cj2jAzV17yfwjVsS5Ecso,106
183
218
  prefect/software/base.py,sha256=GV6a5RrLx3JaOg1RI44jZTsI_qbqNWbWF3uVO5csnHM,1464
184
219
  prefect/software/conda.py,sha256=u5dTn0AcJlNq3o1UY-hA02WRT6e7xzA4pE-xiRvfItg,6695
185
- prefect/software/pip.py,sha256=nzeTdvHnMl-u7Jr1bckgYSesxuTrXBkbFZJRDMrp9hk,4038
220
+ prefect/software/pip.py,sha256=WMOo-uVu5Az5N-1lOG9hpW6uSscP__N1hn6Vi3ItJms,4039
186
221
  prefect/software/python.py,sha256=reuEJFZPJ5PrDMfK3BuPpYieHNkOXJAyCAaopQcjDqE,1767
187
222
  prefect/utilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
188
223
  prefect/utilities/annotations.py,sha256=p33yhh1Zx8BZUlTtl8gKRbpwWU9FVnZ8cfYrcd5KxDI,3103
189
- prefect/utilities/asyncutils.py,sha256=SoG5pdD3_q0Y_NR4MaqNv6MWizY8Z2Ggfe0ZExupDd4,15673
224
+ prefect/utilities/asyncutils.py,sha256=dNVKZKLVdNOhQObPf-224l3uWyKnt1jSFpReMpWFwT4,15674
190
225
  prefect/utilities/callables.py,sha256=zev1GNU_VHjVb_r_vAzTJ4oSXfWODPPnj7yDtaPipFY,11539
191
- prefect/utilities/collections.py,sha256=BAldQs4jRG-4EYhuKDREHhMVOzLRvHty_A4VfuhnqfQ,15435
226
+ prefect/utilities/collections.py,sha256=D_DT489rTCwyzZb021i0xp8osBkkQgSW9XLOoLBzgkg,15436
192
227
  prefect/utilities/compat.py,sha256=mNQZDnzyKaOqy-OV-DnmH_dc7CNF5nQgW_EsA4xMr7g,906
193
228
  prefect/utilities/context.py,sha256=nb_Kui1q9cYK5fLy84baoBzko5-mOToQkd1AnZhwyq8,418
194
229
  prefect/utilities/dispatch.py,sha256=dcezbuJRsD_YYfJrsk5pGiqzJsdUhb9RxJ_lq8nXeds,5466
@@ -213,8 +248,8 @@ prefect/workers/block.py,sha256=lvKlaWdA-DCCXDX23HHK9M5urEq4x2wmpKtU9ft3a7k,7767
213
248
  prefect/workers/process.py,sha256=Kxj_eZYh6R8t8253LYIIafiG7dodCF8RZABwd3Ng_R0,10253
214
249
  prefect/workers/server.py,sha256=WVZJxR8nTMzK0ov0BD0xw5OyQpT26AxlXbsGQ1OrxeQ,1551
215
250
  prefect/workers/utilities.py,sha256=VfPfAlGtTuDj0-Kb8WlMgAuOfgXCdrGAnKMapPSBrwc,2483
216
- prefect_client-2.14.21.dist-info/LICENSE,sha256=MCxsn8osAkzfxKC4CC_dLcUkU8DZLkyihZ8mGs3Ah3Q,11357
217
- prefect_client-2.14.21.dist-info/METADATA,sha256=SIxa2qbMN2dfmdaxhZXytaZ6wZ4r-GxEEL9Ay--7SOk,8143
218
- prefect_client-2.14.21.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
219
- prefect_client-2.14.21.dist-info/top_level.txt,sha256=MJZYJgFdbRc2woQCeB4vM6T33tr01TmkEhRcns6H_H4,8
220
- prefect_client-2.14.21.dist-info/RECORD,,
251
+ prefect_client-2.15.0.dist-info/LICENSE,sha256=MCxsn8osAkzfxKC4CC_dLcUkU8DZLkyihZ8mGs3Ah3Q,11357
252
+ prefect_client-2.15.0.dist-info/METADATA,sha256=eNjXGpOEM5CW-_oo5R1lOVS9LBRKryrOTDq2V3bC9pU,8201
253
+ prefect_client-2.15.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
254
+ prefect_client-2.15.0.dist-info/top_level.txt,sha256=MJZYJgFdbRc2woQCeB4vM6T33tr01TmkEhRcns6H_H4,8
255
+ prefect_client-2.15.0.dist-info/RECORD,,