prefect-client 3.0.0rc8__py3-none-any.whl → 3.0.0rc10__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 (41) hide show
  1. prefect/_internal/compatibility/deprecated.py +53 -0
  2. prefect/_internal/compatibility/migration.py +53 -11
  3. prefect/_internal/integrations.py +7 -0
  4. prefect/agent.py +6 -0
  5. prefect/blocks/core.py +1 -1
  6. prefect/client/__init__.py +4 -0
  7. prefect/client/schemas/objects.py +6 -3
  8. prefect/client/utilities.py +4 -4
  9. prefect/context.py +6 -0
  10. prefect/deployments/schedules.py +5 -2
  11. prefect/deployments/steps/core.py +6 -0
  12. prefect/engine.py +4 -4
  13. prefect/events/schemas/automations.py +3 -3
  14. prefect/exceptions.py +4 -1
  15. prefect/filesystems.py +4 -3
  16. prefect/flow_engine.py +102 -15
  17. prefect/flow_runs.py +1 -1
  18. prefect/flows.py +65 -15
  19. prefect/futures.py +5 -0
  20. prefect/infrastructure/__init__.py +6 -0
  21. prefect/infrastructure/base.py +6 -0
  22. prefect/logging/loggers.py +1 -1
  23. prefect/results.py +85 -68
  24. prefect/serializers.py +3 -3
  25. prefect/settings.py +7 -33
  26. prefect/task_engine.py +78 -21
  27. prefect/task_runners.py +28 -16
  28. prefect/task_worker.py +19 -6
  29. prefect/tasks.py +39 -7
  30. prefect/transactions.py +41 -3
  31. prefect/utilities/asyncutils.py +37 -8
  32. prefect/utilities/collections.py +1 -1
  33. prefect/utilities/importtools.py +1 -1
  34. prefect/utilities/timeout.py +20 -5
  35. prefect/workers/block.py +6 -0
  36. prefect/workers/cloud.py +6 -0
  37. {prefect_client-3.0.0rc8.dist-info → prefect_client-3.0.0rc10.dist-info}/METADATA +3 -2
  38. {prefect_client-3.0.0rc8.dist-info → prefect_client-3.0.0rc10.dist-info}/RECORD +41 -36
  39. {prefect_client-3.0.0rc8.dist-info → prefect_client-3.0.0rc10.dist-info}/LICENSE +0 -0
  40. {prefect_client-3.0.0rc8.dist-info → prefect_client-3.0.0rc10.dist-info}/WHEEL +0 -0
  41. {prefect_client-3.0.0rc8.dist-info → prefect_client-3.0.0rc10.dist-info}/top_level.txt +0 -0
@@ -21,6 +21,7 @@ from typing import (
21
21
  TypeVar,
22
22
  Union,
23
23
  cast,
24
+ overload,
24
25
  )
25
26
  from uuid import UUID, uuid4
26
27
 
@@ -29,6 +30,7 @@ import anyio.abc
29
30
  import anyio.from_thread
30
31
  import anyio.to_thread
31
32
  import sniffio
33
+ import wrapt
32
34
  from typing_extensions import Literal, ParamSpec, TypeGuard
33
35
 
34
36
  from prefect._internal.concurrency.api import _cast_to_call, from_sync
@@ -41,6 +43,7 @@ from prefect.logging import get_logger
41
43
  T = TypeVar("T")
42
44
  P = ParamSpec("P")
43
45
  R = TypeVar("R")
46
+ F = TypeVar("F", bound=Callable[..., Any])
44
47
  Async = Literal[True]
45
48
  Sync = Literal[False]
46
49
  A = TypeVar("A", Async, Sync, covariant=True)
@@ -181,7 +184,7 @@ def run_coro_as_sync(
181
184
  coroutine: Awaitable[R],
182
185
  force_new_thread: bool = False,
183
186
  wait_for_result: bool = True,
184
- ) -> R:
187
+ ) -> Union[R, None]:
185
188
  """
186
189
  Runs a coroutine from a synchronous context, as if it were a synchronous
187
190
  function.
@@ -207,8 +210,13 @@ def run_coro_as_sync(
207
210
  Returns:
208
211
  The result of the coroutine if wait_for_result is True, otherwise None.
209
212
  """
213
+ if not asyncio.iscoroutine(coroutine):
214
+ if isinstance(coroutine, wrapt.ObjectProxy):
215
+ return coroutine.__wrapped__
216
+ else:
217
+ raise TypeError("`coroutine` must be a coroutine object")
210
218
 
211
- async def coroutine_wrapper():
219
+ async def coroutine_wrapper() -> Union[R, None]:
212
220
  """
213
221
  Set flags so that children (and grandchildren...) of this task know they are running in a new
214
222
  thread and do not try to run on the run_sync thread, which would cause a
@@ -237,7 +245,12 @@ def run_coro_as_sync(
237
245
  call = _cast_to_call(coroutine_wrapper)
238
246
  runner = get_run_sync_loop()
239
247
  runner.submit(call)
240
- return call.result()
248
+ try:
249
+ return call.result()
250
+ except KeyboardInterrupt:
251
+ call.cancel()
252
+ logger.debug("Coroutine cancelled due to KeyboardInterrupt.")
253
+ raise
241
254
 
242
255
 
243
256
  async def run_sync_in_worker_thread(
@@ -298,7 +311,23 @@ def in_async_main_thread() -> bool:
298
311
  return not in_async_worker_thread()
299
312
 
300
313
 
301
- def sync_compatible(async_fn: T, force_sync: bool = False) -> T:
314
+ @overload
315
+ def sync_compatible(
316
+ async_fn: Callable[..., Coroutine[Any, Any, R]], force_sync: bool = False
317
+ ) -> Callable[..., R]:
318
+ ...
319
+
320
+
321
+ @overload
322
+ def sync_compatible(
323
+ async_fn: Callable[..., Coroutine[Any, Any, R]], force_sync: bool = False
324
+ ) -> Callable[..., Coroutine[Any, Any, R]]:
325
+ ...
326
+
327
+
328
+ def sync_compatible(
329
+ async_fn: Callable[..., Coroutine[Any, Any, R]], force_sync: bool = False
330
+ ) -> Callable[..., Union[R, Coroutine[Any, Any, R]]]:
302
331
  """
303
332
  Converts an async function into a dual async and sync function.
304
333
 
@@ -314,7 +343,9 @@ def sync_compatible(async_fn: T, force_sync: bool = False) -> T:
314
343
  """
315
344
 
316
345
  @wraps(async_fn)
317
- def coroutine_wrapper(*args, _sync: Optional[bool] = None, **kwargs):
346
+ def coroutine_wrapper(
347
+ *args: Any, _sync: Optional[bool] = None, **kwargs: Any
348
+ ) -> Union[R, Coroutine[Any, Any, R]]:
318
349
  from prefect.context import MissingContextError, get_run_context
319
350
  from prefect.settings import (
320
351
  PREFECT_EXPERIMENTAL_DISABLE_SYNC_COMPAT,
@@ -362,8 +393,6 @@ def sync_compatible(async_fn: T, force_sync: bool = False) -> T:
362
393
  else:
363
394
  return run_coro_as_sync(ctx_call())
364
395
 
365
- # TODO: This is breaking type hints on the callable... mypy is behind the curve
366
- # on argument annotations. We can still fix this for editors though.
367
396
  if is_async_fn(async_fn):
368
397
  wrapper = coroutine_wrapper
369
398
  elif is_async_gen_fn(async_fn):
@@ -371,7 +400,7 @@ def sync_compatible(async_fn: T, force_sync: bool = False) -> T:
371
400
  else:
372
401
  raise TypeError("The decorated function must be async.")
373
402
 
374
- wrapper.aio = async_fn
403
+ wrapper.aio = async_fn # type: ignore
375
404
  return wrapper
376
405
 
377
406
 
@@ -369,7 +369,7 @@ def visit_collection(
369
369
 
370
370
  # --- Sequences
371
371
 
372
- elif typ in (list, tuple, set):
372
+ elif isinstance(expr, (list, tuple, set)):
373
373
  items = [visit_nested(o) for o in expr]
374
374
  if return_data:
375
375
  modified = any(item is not orig for item, orig in zip(items, expr))
@@ -422,7 +422,7 @@ def safe_load_namespace(source_code: str):
422
422
  logger.debug("Failed to import from %s: %s", node.module, e)
423
423
 
424
424
  # Handle local definitions
425
- for node in ast.walk(parsed_code):
425
+ for node in parsed_code.body:
426
426
  if isinstance(node, (ast.ClassDef, ast.FunctionDef, ast.Assign)):
427
427
  try:
428
428
  # Compile and execute each class and function definition and assignment
@@ -1,6 +1,6 @@
1
1
  from asyncio import CancelledError
2
2
  from contextlib import contextmanager
3
- from typing import Optional
3
+ from typing import Optional, Type
4
4
 
5
5
  from prefect._internal.concurrency.cancellation import (
6
6
  cancel_async_after,
@@ -8,8 +8,19 @@ from prefect._internal.concurrency.cancellation import (
8
8
  )
9
9
 
10
10
 
11
+ def fail_if_not_timeout_error(timeout_exc_type: Type[Exception]) -> None:
12
+ if not issubclass(timeout_exc_type, TimeoutError):
13
+ raise ValueError(
14
+ "The `timeout_exc_type` argument must be a subclass of `TimeoutError`."
15
+ )
16
+
17
+
11
18
  @contextmanager
12
- def timeout_async(seconds: Optional[float] = None):
19
+ def timeout_async(
20
+ seconds: Optional[float] = None, timeout_exc_type: Type[TimeoutError] = TimeoutError
21
+ ):
22
+ fail_if_not_timeout_error(timeout_exc_type)
23
+
13
24
  if seconds is None:
14
25
  yield
15
26
  return
@@ -18,11 +29,15 @@ def timeout_async(seconds: Optional[float] = None):
18
29
  with cancel_async_after(timeout=seconds):
19
30
  yield
20
31
  except CancelledError:
21
- raise TimeoutError(f"Scope timed out after {seconds} second(s).")
32
+ raise timeout_exc_type(f"Scope timed out after {seconds} second(s).")
22
33
 
23
34
 
24
35
  @contextmanager
25
- def timeout(seconds: Optional[float] = None):
36
+ def timeout(
37
+ seconds: Optional[float] = None, timeout_exc_type: Type[TimeoutError] = TimeoutError
38
+ ):
39
+ fail_if_not_timeout_error(timeout_exc_type)
40
+
26
41
  if seconds is None:
27
42
  yield
28
43
  return
@@ -31,4 +46,4 @@ def timeout(seconds: Optional[float] = None):
31
46
  with cancel_sync_after(timeout=seconds):
32
47
  yield
33
48
  except CancelledError:
34
- raise TimeoutError(f"Scope timed out after {seconds} second(s).")
49
+ raise timeout_exc_type(f"Scope timed out after {seconds} second(s).")
@@ -0,0 +1,6 @@
1
+ """
2
+ 2024-06-27: This surfaces an actionable error message for moved or removed objects in Prefect 3.0 upgrade.
3
+ """
4
+ from prefect._internal.compatibility.migration import getattr_migration
5
+
6
+ __getattr__ = getattr_migration(__name__)
@@ -0,0 +1,6 @@
1
+ """
2
+ 2024-06-27: This surfaces an actionable error message for moved or removed objects in Prefect 3.0 upgrade.
3
+ """
4
+ from prefect._internal.compatibility.migration import getattr_migration
5
+
6
+ __getattr__ = getattr_migration(__name__)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: prefect-client
3
- Version: 3.0.0rc8
3
+ Version: 3.0.0rc10
4
4
  Summary: Workflow orchestration and management.
5
5
  Home-page: https://www.prefect.io
6
6
  Author: Prefect Technologies, Inc.
@@ -58,8 +58,9 @@ Requires-Dist: sniffio <2.0.0,>=1.3.0
58
58
  Requires-Dist: toml >=0.10.0
59
59
  Requires-Dist: typing-extensions <5.0.0,>=4.5.0
60
60
  Requires-Dist: ujson <6.0.0,>=5.8.0
61
- Requires-Dist: uvicorn <0.29.0,>=0.14.0
61
+ Requires-Dist: uvicorn !=0.29.0,>=0.14.0
62
62
  Requires-Dist: websockets <13.0,>=10.4
63
+ Requires-Dist: wrapt >=1.16.0
63
64
  Requires-Dist: importlib-metadata >=4.4 ; python_version < "3.10"
64
65
  Provides-Extra: notifications
65
66
  Requires-Dist: apprise <2.0.0,>=1.1.0 ; extra == 'notifications'
@@ -1,40 +1,42 @@
1
1
  prefect/.prefectignore,sha256=awSprvKT0vI8a64mEOLrMxhxqcO-b0ERQeYpA2rNKVQ,390
2
2
  prefect/__init__.py,sha256=rFlBikby0TcAmljqECcleQE_se15eh1gLp5iac0ZhsU,3301
3
3
  prefect/_version.py,sha256=I9JsXwt7BjAAbMEZgtmE3a6dJ2jqV-wqWto9D6msb3k,24597
4
+ prefect/agent.py,sha256=BOVVY5z-vUIQ2u8LwMTXDaNys2fjOZSS5YGDwJmTQjI,230
4
5
  prefect/artifacts.py,sha256=G-jCyce3XGtTyQpCk_s3L7e-TWFyJY8Dcnk_i4_CsY4,12647
5
6
  prefect/automations.py,sha256=NlQ62GPJzy-gnWQqX7c6CQJKw7p60WLGDAFcy82vtg4,5613
6
7
  prefect/cache_policies.py,sha256=uEKNGO-PJ3N35B2tjhRDtQULN6ok72D9raIoJaUyXk0,6365
7
- prefect/context.py,sha256=OEmbC61D3l0E50HIaMlVNNJShhYC6I1-4TQhpP321tw,19480
8
- prefect/engine.py,sha256=asH7iMb1IfEOOIVIxM3ZalfvCe9PUp7f9ceKyT6isa8,2019
9
- prefect/exceptions.py,sha256=kRiEX6qpT9errs0SuYJDYG7ioMNddTvqK7gT8RVFajk,11076
10
- prefect/filesystems.py,sha256=HrPoehZKpuVxzWDXaTiuJqgVCgxlQ4lyTEZKSYKiZUc,17169
11
- prefect/flow_engine.py,sha256=3JM3LpgqCGLUsTbrh5-CL3IFnHSHRWHbqV9xMEC3nyM,26149
12
- prefect/flow_runs.py,sha256=7mHGjb3-6MfR4XKQjy9sJPS9dS0yTxVO6MYQ8YlGjGw,16071
13
- prefect/flows.py,sha256=wR3bkeS5MuAk_T2UzcBMWx5idghE66CfDVcgR4_6DIE,79033
14
- prefect/futures.py,sha256=P3ZZdoOFaxJFDtquJce6PwUz4VWZd0G3Pf74uMVRGQY,11958
8
+ prefect/context.py,sha256=GmCFJDsj8mEYBph8q_mQpzDebk3P43EeaXz-SiMeAmQ,19698
9
+ prefect/engine.py,sha256=BpmDbe6miZcTl1vRkxfCPYcWSXADLigGPCagFwucMz0,1976
10
+ prefect/exceptions.py,sha256=3s69Z_IC3HKF6BKxcHrMPXkKdYwfbEfaTjy4-5LOtQ0,11132
11
+ prefect/filesystems.py,sha256=rbFvlqHXeeo71nK1Y5I0-ucmGOYUcdkbb6N2vpsRcWE,17229
12
+ prefect/flow_engine.py,sha256=niDSb2xeKvtE4ZZmkUR3zF-khqPFhpWuORnxZ_bJOD0,29246
13
+ prefect/flow_runs.py,sha256=EaXRIQTOnwnA0fO7_EjwafFRmS57K_CRy0Xsz3JDIhc,16070
14
+ prefect/flows.py,sha256=KfAulSaYhodoeLVROthtYWeVpchRhv7u9dsgYbR4Kzg,80833
15
+ prefect/futures.py,sha256=nGD195sLosqBIpBtESLeVMKAorUVRNLstipiqs6e7w8,12153
15
16
  prefect/main.py,sha256=bab5nBn37a6gmxdPbTlRS2a9Cf0KY0GaCotDOSbcQ7M,1930
16
17
  prefect/manifests.py,sha256=477XcmfdC_yE81wT6zIAKnEUEJ0lH9ZLfOVSgX2FohE,676
17
18
  prefect/plugins.py,sha256=7AICJzHIu8iAeF9vl9wAYm28pR_k7dkdnm3OyJRfCv4,2229
18
19
  prefect/profiles.toml,sha256=Fs8hD_BdWHZgAijgk8pK_Zx-Pm-YFixqDIfEP6fM-qU,38
19
20
  prefect/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
- prefect/results.py,sha256=Lty6G1zeDyxSmJTYHg3ESXhqt535DsK6gvbtkDsNYWg,25360
21
- prefect/serializers.py,sha256=8ON--RmaLX3Td3Rpd1lshGcqWyjlCFkmO3sblxsdT_c,8699
22
- prefect/settings.py,sha256=IauUadC63B5D4CjVrLca7yaG2qYO4umPAW6t1zYShrE,70565
21
+ prefect/results.py,sha256=gpX2pGIYyVfxMaVJkic5i1KbJ4RBARAoIizDL_C3auI,26152
22
+ prefect/serializers.py,sha256=Lo41EM0_qGzcfB_63390Izeo3DdK6cY6VZfxa9hpSGQ,8712
23
+ prefect/settings.py,sha256=-x6n7WpSgflBPCFRx9mP4i9cqDtMWVI3IKU7GFTRmP4,69747
23
24
  prefect/states.py,sha256=lw22xucH46cN9stkxiV9ByIvq689mH5iL3gErri-Y18,22207
24
- prefect/task_engine.py,sha256=P8Tl7gp7PzvnxjBqk-M6iev2NTVDlsJ7FOPruJvnn0k,33018
25
- prefect/task_runners.py,sha256=KulKKV1_Pkt7Pt2to3NLc1tp-idpV8EXdSuFJXS8ZyY,14622
25
+ prefect/task_engine.py,sha256=94Acrmq04i-KjJtSa72_ofGAEfs_lKBAYqhRww0jH24,34957
26
+ prefect/task_runners.py,sha256=W1n0yMwbDIqnvffFVJADo9MGEbLaYkzWk52rqgnkMY4,15019
26
27
  prefect/task_runs.py,sha256=eDWYH5H1K4SyduhKmn3GzO6vM3fZSwOZxAb8KhkMGsk,7798
27
- prefect/task_worker.py,sha256=iawQZn4hNcrXR-CHtM4jzhlnotqeNHiRuHc-eumJ9Oc,16788
28
- prefect/tasks.py,sha256=CKFlMcJ7Sw3zYTgPp3fhZZK2oTy33RoQmLNvavgUAxg,61427
29
- prefect/transactions.py,sha256=XhEXdhid1457m5V7VTz1U8JCek6U6jSFD7EffGhCLag,9149
28
+ prefect/task_worker.py,sha256=dH9hf_vKsOlWtXinp2-1d2wk2YCa69QyuH8YAV_Bp28,17342
29
+ prefect/tasks.py,sha256=VkliQAiiLiYSpBQvY1Xc4huqmGgMlgX0KChlBPOX9IY,62599
30
+ prefect/transactions.py,sha256=UBEFArEn1jWlacvHtYBxdtK6k57I4bHcCl5n8LDblRI,10460
30
31
  prefect/variables.py,sha256=-t5LVY0N-K4f0fa6YwruVVQqwnU3fGWBMYXXE32XPkA,4821
31
32
  prefect/_internal/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
32
33
  prefect/_internal/_logging.py,sha256=HvNHY-8P469o5u4LYEDBTem69XZEt1QUeUaLToijpak,810
34
+ prefect/_internal/integrations.py,sha256=U4cZMDbnilzZSKaMxvzZcSL27a1tzRMjDoTfr2ul_eY,231
33
35
  prefect/_internal/pytz.py,sha256=WWl9x16rKFWequGmcOGs_ljpCDPf2LDHMyZp_4D8e6c,13748
34
36
  prefect/_internal/compatibility/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
35
- prefect/_internal/compatibility/deprecated.py,sha256=nqevphK00rakKgCfkbqBQ4NCktdb4338uuROjFcq6xA,7517
37
+ prefect/_internal/compatibility/deprecated.py,sha256=7vqE1_PAPS0cDalTfTumHWUIOqIzkbKvQl1iwHlfynQ,9205
36
38
  prefect/_internal/compatibility/experimental.py,sha256=nrIeeAe1vZ0yMb1cPw5AroVR6_msx-bzTeBLzY4au6o,5634
37
- prefect/_internal/compatibility/migration.py,sha256=ec5H2VFCMT1diwW1hinkQpDDSz_PpiArdP1ypEOtNys,4792
39
+ prefect/_internal/compatibility/migration.py,sha256=O9HrcqxfQ-RrIklH0uGxeXMrQejPz1hmsgrw8zDLJuw,6801
38
40
  prefect/_internal/concurrency/__init__.py,sha256=YlTwU9ryjPNwbJa45adLJY00t_DGCh1QrdtY9WdVFfw,2140
39
41
  prefect/_internal/concurrency/api.py,sha256=mE2IahRxGX1DgyxIryDXhF6gwhOJ-cdghsTjJtNil9U,7132
40
42
  prefect/_internal/concurrency/calls.py,sha256=UlNgzCoy3awKEPnMpexBSa1dk_2MNwCWoZ5YQODEmG4,15437
@@ -59,24 +61,24 @@ prefect/_internal/schemas/serializers.py,sha256=G_RGHfObjisUiRvd29p-zc6W4bwt5rE1
59
61
  prefect/_internal/schemas/validators.py,sha256=McSijrOcrqQpE-fvp4WRMoxsVn5fWIyBIXdYys1YRhk,29690
60
62
  prefect/blocks/__init__.py,sha256=BUfh6gIwA6HEjRyVCAiv0he3M1zfM-oY-JrlBfeWeY8,182
61
63
  prefect/blocks/abstract.py,sha256=YLzCaf3yXv6wFCF5ZqCIHJNwH7fME1rLxC-SijARHzk,16319
62
- prefect/blocks/core.py,sha256=cgkPF1rpNl_4Asekh2RJ0RiMmjqtuQEbp52BDXgxdbY,46657
64
+ prefect/blocks/core.py,sha256=zB0A0824u3MclXYd9Nt82uARbrDEi-onAtYmCi-XNCk,46667
63
65
  prefect/blocks/fields.py,sha256=1m507VVmkpOnMF_7N-qboRjtw4_ceIuDneX3jZ3Jm54,63
64
66
  prefect/blocks/notifications.py,sha256=QV2ndeiERBbL9vNW2zR1LzH86llDY1sJVh2DN0sh1eo,28198
65
67
  prefect/blocks/redis.py,sha256=GUKYyx2QLtyNvgf5FT_dJxbgQcOzWCja3I23J1-AXhM,5629
66
68
  prefect/blocks/system.py,sha256=tkONKzDlaQgR6NtWXON0ZQm7nGuFKt0_Du3sj8ubs-M,3605
67
69
  prefect/blocks/webhook.py,sha256=mnAfGF64WyjH55BKkTbC1AP9FETNcrm_PEjiqJNpigA,1867
68
- prefect/client/__init__.py,sha256=yJ5FRF9RxNUio2V_HmyKCKw5G6CZO0h8cv6xA_Hkpcc,477
70
+ prefect/client/__init__.py,sha256=fFtCXsGIsBCsAMFKlUPgRVUoIeqq_CsGtFE1knhbHlU,593
69
71
  prefect/client/base.py,sha256=laxz64IEhbetMIcRh67_YDYd5ThCmUK9fgUgco8WyXQ,24647
70
72
  prefect/client/cloud.py,sha256=5T84QP9IRa_cqL7rmY3lR1wxFW6C41PajFZgelurhK0,4124
71
73
  prefect/client/collections.py,sha256=I9EgbTg4Fn57gn8vwP_WdDmgnATbx9gfkm2jjhCORjw,1037
72
74
  prefect/client/constants.py,sha256=Z_GG8KF70vbbXxpJuqW5pLnwzujTVeHbcYYRikNmGH0,29
73
75
  prefect/client/orchestration.py,sha256=W3tiqjND1lf0GtunLBayMRrUD5ykAcW0GfwxqT9fT-A,142479
74
76
  prefect/client/subscriptions.py,sha256=J9uK9NGHO4VX4Y3NGgBJ4pIG_0cf-dJWPhF3f3PGYL4,3388
75
- prefect/client/utilities.py,sha256=Ni1DsFDhnvxpXWerlvZpK8tCg-uZ8UyZwOmDTKEb1DI,3269
77
+ prefect/client/utilities.py,sha256=Qh1WdKLs8F_GuA04FeZ1GJsPYtiCN4DjKmLEaMfKmpQ,3264
76
78
  prefect/client/schemas/__init__.py,sha256=KlyqFV-hMulMkNstBn_0ijoHoIwJZaBj6B1r07UmgvE,607
77
79
  prefect/client/schemas/actions.py,sha256=wiyq87MrHBVbZZVqA6IX4Gy_rw7sogLfqRSXK3Id0cc,28019
78
80
  prefect/client/schemas/filters.py,sha256=HyIYZQowhkHa_D6syj83zUp5uFEzA8UADLaS9mt1MTo,35305
79
- prefect/client/schemas/objects.py,sha256=tLFLEuSnISVeLPkOUDsgcZo5Rq7is1ZCladDa_abR-Q,53422
81
+ prefect/client/schemas/objects.py,sha256=ot3nxARccG3viFuXp2bli_6JaGcO6I1_U_8gP-F2j0w,53547
80
82
  prefect/client/schemas/responses.py,sha256=xW9QKmVgBftSEmtuSr5gp9HBFvIDzF6aSFq-mhv7dE8,14948
81
83
  prefect/client/schemas/schedules.py,sha256=8rpqjOYtknu2-1n5_WD4cOplgu93P3mCyX86B22LfL4,13070
82
84
  prefect/client/schemas/sorting.py,sha256=EIQ6FUjUWMwk6fn6ckVLQLXOP-GI5kce7ftjUkDFWV0,2490
@@ -92,9 +94,9 @@ prefect/deployments/base.py,sha256=j2VUHkghXCqbfYJD8Joeh12Ejh4KCzr2DgVPRpDpbLw,1
92
94
  prefect/deployments/deployments.py,sha256=EvC9qBdvJRc8CHJqRjFTqtzx75SE8bpZOl5C-2eULyA,109
93
95
  prefect/deployments/flow_runs.py,sha256=eatcBD7pg-aaEqs9JxQQcKN_flf614O4gAvedAlRyNo,6803
94
96
  prefect/deployments/runner.py,sha256=wVz2Ltis_tOpWLvLzPuOBJBIsdWqs8aXY2oCOuwhssc,41763
95
- prefect/deployments/schedules.py,sha256=l1xOHBmJJ-VZFPTX4RWScJ802P-iE81Vzp4EniQ65k4,2004
97
+ prefect/deployments/schedules.py,sha256=KCYA6dOmLAoElHZuoWqdJn4Yno4TtOZtXfPOpTLb1cE,2046
96
98
  prefect/deployments/steps/__init__.py,sha256=Dlz9VqMRyG1Gal8dj8vfGpPr0LyQhZdvcciozkK8WoY,206
97
- prefect/deployments/steps/core.py,sha256=yKBVi8pi_7fzdng28kUD8vcSl5aED5yFnu9KxCdquKA,6627
99
+ prefect/deployments/steps/core.py,sha256=5vFf6BSpu992kkaYsvcPpsz-nZxFmayMIDmY9h0Hb8M,6846
98
100
  prefect/deployments/steps/pull.py,sha256=ylp3fd72hEfmY67LQs7sMwdcK6KKobsTZOeay-YUl8Q,7125
99
101
  prefect/deployments/steps/utility.py,sha256=s5mMBmHVCS1ZRBRUCunwPueU_7Dii_GK6CqCoznwUCc,8134
100
102
  prefect/docker/__init__.py,sha256=jumlacz2HY9l1ee0L9_kE0PFi9NO3l3pWINm9T5N9hs,524
@@ -109,11 +111,12 @@ prefect/events/worker.py,sha256=UGwqnoOHmtvAh_Y9yJlEB6RfKmYRu4Xsc5l9LolHV_0,3434
109
111
  prefect/events/cli/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
110
112
  prefect/events/cli/automations.py,sha256=WIZ3-EcDibjQB5BrMEx7OZ7UfOqP8VjCI1dNh64Nmg0,11425
111
113
  prefect/events/schemas/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
112
- prefect/events/schemas/automations.py,sha256=hZ7lbkJEhpHmyd118k_O7kl_i_lEnDifwsn2ZHyn8Po,14380
114
+ prefect/events/schemas/automations.py,sha256=he9_v0Oq8AtCJe5gMti5GDQiaGa50sM4Jz9soDf-upU,14396
113
115
  prefect/events/schemas/deployment_triggers.py,sha256=i_BtKscXU9kOHAeqmxrYQr8itEYfuPIxAnCW3fo1YeE,3114
114
116
  prefect/events/schemas/events.py,sha256=RqosMukGfHvLPnYDcyxkm6VuifCeH5-aQ4POdMPmaUA,8649
115
117
  prefect/events/schemas/labelling.py,sha256=bU-XYaHXhI2MEBIHngth96R9D02m8HHb85KNcHZ_1Gc,3073
116
- prefect/infrastructure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
118
+ prefect/infrastructure/__init__.py,sha256=BOVVY5z-vUIQ2u8LwMTXDaNys2fjOZSS5YGDwJmTQjI,230
119
+ prefect/infrastructure/base.py,sha256=BOVVY5z-vUIQ2u8LwMTXDaNys2fjOZSS5YGDwJmTQjI,230
117
120
  prefect/infrastructure/provisioners/__init__.py,sha256=wn240gHrQbien2g_g2A8Ujb2iFyjmDgMHLQ7tgQngf4,1706
118
121
  prefect/infrastructure/provisioners/cloud_run.py,sha256=K6_8AO_fZRfuI0hGx_EwvlRkiNPcmR5yD9P8B-QSjuc,17745
119
122
  prefect/infrastructure/provisioners/container_instance.py,sha256=ZaiaAOywMjbhZI6emzqsDQh-xBePajzjjMT_JY8lwNA,41281
@@ -128,7 +131,7 @@ prefect/logging/filters.py,sha256=9keHLN4-cpnsWcii1qU0RITNi9-m7pOhkJ_t0MtCM4k,11
128
131
  prefect/logging/formatters.py,sha256=3nBWgawvD48slT0zgkKeus1gIyf0OjmDKdLwMEe5mPU,3923
129
132
  prefect/logging/handlers.py,sha256=eIf-0LFH8XUu8Ybnc3LXoocSsa8M8EdAIwbPTVFzZjI,10425
130
133
  prefect/logging/highlighters.py,sha256=BpSXOy0n3lFVvlKWa7jC-HetAiClFi9jnQtEq5-rgok,1681
131
- prefect/logging/loggers.py,sha256=qWM-5IxN3U5MlK7srfALOC9sCpGqt20Vu9WSxpU2zIs,11527
134
+ prefect/logging/loggers.py,sha256=tvd2uacDOndMKt_jvVlk-bsHGx6lRTaYNtbrvjIaUg8,11534
132
135
  prefect/logging/logging.yml,sha256=UkEewf0c3_dURI2uCU4RrxkhI5Devoa1s93fl7hilcg,3160
133
136
  prefect/records/__init__.py,sha256=7q-lwyevfVgb5S7K9frzawmiJmpZ5ET0m5yXIHBYcVA,31
134
137
  prefect/records/result_store.py,sha256=6Yh9zqqXMWjn0qWSfcjQBSfXCM7jVg9pve5TVsOodDc,1734
@@ -149,9 +152,9 @@ prefect/types/__init__.py,sha256=SAHJDtWEGidTKXQACJ38nj6fq8r57Gj0Pwo4Gy7pVWs,223
149
152
  prefect/types/entrypoint.py,sha256=2FF03-wLPgtnqR_bKJDB2BsXXINPdu8ptY9ZYEZnXg8,328
150
153
  prefect/utilities/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
151
154
  prefect/utilities/annotations.py,sha256=bXB43j5Zsq5gaBcJe9qnszBlnNwCTwqSTgcu2OkkRLo,2776
152
- prefect/utilities/asyncutils.py,sha256=GRDiA3S9vGRpM3aKSq6iZnNP9XNBcfUg0NBwbjUFeAw,19200
155
+ prefect/utilities/asyncutils.py,sha256=9utKsWwvZ2q4ZgXEEPwqlAF9rQ_lavAo_4yZowICkJQ,19997
153
156
  prefect/utilities/callables.py,sha256=rkPPzwiVFRoVszSUq612s9S0v3nxcMC-rIwfXoJTn0E,24915
154
- prefect/utilities/collections.py,sha256=2W7cgdB_c_LGMbHPmFSKJbwue_Ai8h5CukSmFoZ8svE,17248
157
+ prefect/utilities/collections.py,sha256=pPa_SZZq80cja6l99b3TV7hRQy366WnuWpOW_FnutMI,17259
155
158
  prefect/utilities/compat.py,sha256=mNQZDnzyKaOqy-OV-DnmH_dc7CNF5nQgW_EsA4xMr7g,906
156
159
  prefect/utilities/context.py,sha256=BThuUW94-IYgFYTeMIM9KMo8ShT3oiI7w5ajZHzU1j0,1377
157
160
  prefect/utilities/dispatch.py,sha256=c8G-gBo7hZlyoD7my9nO50Rzy8Retk-np5WGq9_E2AM,5856
@@ -159,7 +162,7 @@ prefect/utilities/dockerutils.py,sha256=kRozGQ7JO6Uxl-ljWtDryzxhf96rHL78aHYDh255
159
162
  prefect/utilities/engine.py,sha256=E5WSLg9XsvkEN56M8Q5Wl4k0INUpaqmvdToQPFjYWNo,30160
160
163
  prefect/utilities/filesystem.py,sha256=frAyy6qOeYa7c-jVbEUGZQEe6J1yF8I_SvUepPd59gI,4415
161
164
  prefect/utilities/hashing.py,sha256=EOwZLmoIZImuSTxAvVqInabxJ-4RpEfYeg9e2EDQF8o,1752
162
- prefect/utilities/importtools.py,sha256=-7-ROjtL6ZHLIrGll05h0c9Vv0L70XH8U9BQgeAPWAU,15411
165
+ prefect/utilities/importtools.py,sha256=YKmfib0_fYK_TaVjy8Ru1yxBI1OPH_Jh-utxlLpu2y8,15406
163
166
  prefect/utilities/math.py,sha256=wLwcKVidpNeWQi1TUIWWLHGjlz9UgboX9FUGhx_CQzo,2821
164
167
  prefect/utilities/names.py,sha256=x-stHcF7_tebJPvB1dz-5FvdXJXNBTg2kFZXSnIBBmk,1657
165
168
  prefect/utilities/processutils.py,sha256=yo_GO48pZzgn4A0IK5irTAoqyUCYvWKDSqHXCrtP8c4,14547
@@ -169,7 +172,7 @@ prefect/utilities/services.py,sha256=WoYOkWFnuW0K5I2RPx2g7F7WhuVgz39zWK9xkgiSHC8
169
172
  prefect/utilities/slugify.py,sha256=57Vb14t13F3zm1P65KAu8nVeAz0iJCd1Qc5eMG-R5y8,169
170
173
  prefect/utilities/templating.py,sha256=nAiOGMMHGbIDFkGYy-g-dzcbY311WfycdgAhsM3cLpY,13298
171
174
  prefect/utilities/text.py,sha256=eXGIsCcZ7h_6hy8T5GDQjL8GiKyktoOqavYub0QjgO4,445
172
- prefect/utilities/timeout.py,sha256=nxmuPxROIT-i8gPffpARuxnxu58H0vkmbjTVIgef0_0,805
175
+ prefect/utilities/timeout.py,sha256=BRDIOWnqcw3B7X9tIk83Y3n9nQrJzZgduDQ63z-ns8w,1286
173
176
  prefect/utilities/urls.py,sha256=GuiV3mk-XfzXx139ySyNQNbNaolA3T-hUZvW3T_PhXU,6396
174
177
  prefect/utilities/visualization.py,sha256=Lum4IvLQ0nHsdLt6GGzS3Wwo-828u1rmOKc5mmWu994,6502
175
178
  prefect/utilities/schema_tools/__init__.py,sha256=KsFsTEHQqgp89TkDpjggkgBBywoHQPxbx-m6YQhiNEI,322
@@ -177,11 +180,13 @@ prefect/utilities/schema_tools/hydration.py,sha256=Nitnmr35Mcn5z9NXIvh9DuZW5nCZx
177
180
  prefect/utilities/schema_tools/validation.py,sha256=zZHL_UFxAlgaUzi-qsEOrhWtZ7EkFQvPkX_YN1EJNTo,8414
178
181
  prefect/workers/__init__.py,sha256=8dP8SLZbWYyC_l9DRTQSE3dEbDgns5DZDhxkp_NfsbQ,35
179
182
  prefect/workers/base.py,sha256=62E0Q41pPr3eQdSBSUBfiR4WYx01OfuqUp5INRqHGgo,46942
183
+ prefect/workers/block.py,sha256=BOVVY5z-vUIQ2u8LwMTXDaNys2fjOZSS5YGDwJmTQjI,230
184
+ prefect/workers/cloud.py,sha256=BOVVY5z-vUIQ2u8LwMTXDaNys2fjOZSS5YGDwJmTQjI,230
180
185
  prefect/workers/process.py,sha256=vylkSSswaSCew-V65YW0HcxIxyKI-uqWkbSKpkkLamQ,9372
181
186
  prefect/workers/server.py,sha256=EfPiMxI7TVgkqpHkdPwSaYG-ydi99sG7jwXhkAcACbI,1519
182
187
  prefect/workers/utilities.py,sha256=VfPfAlGtTuDj0-Kb8WlMgAuOfgXCdrGAnKMapPSBrwc,2483
183
- prefect_client-3.0.0rc8.dist-info/LICENSE,sha256=MCxsn8osAkzfxKC4CC_dLcUkU8DZLkyihZ8mGs3Ah3Q,11357
184
- prefect_client-3.0.0rc8.dist-info/METADATA,sha256=HxD4j94rGwv_w89XcuyGmUFJsgSjo22pZNJA99XFK1A,7392
185
- prefect_client-3.0.0rc8.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
186
- prefect_client-3.0.0rc8.dist-info/top_level.txt,sha256=MJZYJgFdbRc2woQCeB4vM6T33tr01TmkEhRcns6H_H4,8
187
- prefect_client-3.0.0rc8.dist-info/RECORD,,
188
+ prefect_client-3.0.0rc10.dist-info/LICENSE,sha256=MCxsn8osAkzfxKC4CC_dLcUkU8DZLkyihZ8mGs3Ah3Q,11357
189
+ prefect_client-3.0.0rc10.dist-info/METADATA,sha256=IrvEmM3lkAlZER89HpIGYjfXrekuvfgaxXCE4875OQ4,7424
190
+ prefect_client-3.0.0rc10.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
191
+ prefect_client-3.0.0rc10.dist-info/top_level.txt,sha256=MJZYJgFdbRc2woQCeB4vM6T33tr01TmkEhRcns6H_H4,8
192
+ prefect_client-3.0.0rc10.dist-info/RECORD,,