prefect-client 3.4.2.dev1__tar.gz → 3.4.2.dev3__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 (330) hide show
  1. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/PKG-INFO +2 -2
  2. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/pyproject.toml +1 -1
  3. prefect_client-3.4.2.dev3/src/prefect/_build_info.py +5 -0
  4. prefect_client-3.4.2.dev3/src/prefect/_internal/compatibility/blocks.py +27 -0
  5. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/results.py +24 -35
  6. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/task_worker.py +95 -14
  7. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/tasks.py +6 -2
  8. prefect_client-3.4.2.dev1/src/prefect/_build_info.py +0 -5
  9. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/.gitignore +0 -0
  10. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/LICENSE +0 -0
  11. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/README.md +0 -0
  12. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/.prefectignore +0 -0
  13. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/__init__.py +0 -0
  14. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/__main__.py +0 -0
  15. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_experimental/__init__.py +0 -0
  16. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_experimental/bundles/__init__.py +0 -0
  17. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_experimental/bundles/execute.py +0 -0
  18. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_experimental/lineage.py +0 -0
  19. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_experimental/sla/__init__.py +0 -0
  20. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_experimental/sla/client.py +0 -0
  21. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_experimental/sla/objects.py +0 -0
  22. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/__init__.py +0 -0
  23. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/_logging.py +0 -0
  24. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/compatibility/__init__.py +0 -0
  25. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/compatibility/async_dispatch.py +0 -0
  26. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/compatibility/deprecated.py +0 -0
  27. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/compatibility/migration.py +0 -0
  28. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/concurrency/__init__.py +0 -0
  29. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/concurrency/api.py +0 -0
  30. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/concurrency/calls.py +0 -0
  31. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/concurrency/cancellation.py +0 -0
  32. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/concurrency/event_loop.py +0 -0
  33. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/concurrency/inspection.py +0 -0
  34. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/concurrency/primitives.py +0 -0
  35. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/concurrency/services.py +0 -0
  36. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/concurrency/threads.py +0 -0
  37. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/concurrency/waiters.py +0 -0
  38. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/integrations.py +0 -0
  39. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/pydantic/__init__.py +0 -0
  40. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/pydantic/schemas.py +0 -0
  41. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/pydantic/v1_schema.py +0 -0
  42. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/pydantic/v2_schema.py +0 -0
  43. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/pydantic/v2_validated_func.py +0 -0
  44. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/pytz.py +0 -0
  45. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/retries.py +0 -0
  46. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/schemas/__init__.py +0 -0
  47. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/schemas/bases.py +0 -0
  48. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/schemas/fields.py +0 -0
  49. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/schemas/serializers.py +0 -0
  50. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/schemas/validators.py +0 -0
  51. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_internal/uuid7.py +0 -0
  52. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_result_records.py +0 -0
  53. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_vendor/croniter/__init__.py +0 -0
  54. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_vendor/croniter/croniter.py +0 -0
  55. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_versioning.py +0 -0
  56. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/_waiters.py +0 -0
  57. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/agent.py +0 -0
  58. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/artifacts.py +0 -0
  59. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/automations.py +0 -0
  60. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/blocks/__init__.py +0 -0
  61. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/blocks/abstract.py +0 -0
  62. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/blocks/core.py +0 -0
  63. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/blocks/fields.py +0 -0
  64. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/blocks/notifications.py +0 -0
  65. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/blocks/redis.py +0 -0
  66. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/blocks/system.py +0 -0
  67. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/blocks/webhook.py +0 -0
  68. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/cache_policies.py +0 -0
  69. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/__init__.py +0 -0
  70. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/base.py +0 -0
  71. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/cloud.py +0 -0
  72. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/collections.py +0 -0
  73. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/constants.py +0 -0
  74. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/__init__.py +0 -0
  75. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_artifacts/__init__.py +0 -0
  76. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_artifacts/client.py +0 -0
  77. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_automations/__init__.py +0 -0
  78. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_automations/client.py +0 -0
  79. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_blocks_documents/__init__.py +0 -0
  80. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_blocks_documents/client.py +0 -0
  81. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_blocks_schemas/__init__.py +0 -0
  82. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_blocks_schemas/client.py +0 -0
  83. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_blocks_types/__init__.py +0 -0
  84. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_blocks_types/client.py +0 -0
  85. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_concurrency_limits/__init__.py +0 -0
  86. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_concurrency_limits/client.py +0 -0
  87. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_deployments/__init__.py +0 -0
  88. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_deployments/client.py +0 -0
  89. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_flow_runs/__init__.py +0 -0
  90. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_flow_runs/client.py +0 -0
  91. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_flows/__init__.py +0 -0
  92. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_flows/client.py +0 -0
  93. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_logs/__init__.py +0 -0
  94. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_logs/client.py +0 -0
  95. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_variables/__init__.py +0 -0
  96. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_variables/client.py +0 -0
  97. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_work_pools/__init__.py +0 -0
  98. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/_work_pools/client.py +0 -0
  99. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/base.py +0 -0
  100. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/orchestration/routes.py +0 -0
  101. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/schemas/__init__.py +0 -0
  102. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/schemas/actions.py +0 -0
  103. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/schemas/filters.py +0 -0
  104. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/schemas/objects.py +0 -0
  105. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/schemas/responses.py +0 -0
  106. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/schemas/schedules.py +0 -0
  107. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/schemas/sorting.py +0 -0
  108. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/subscriptions.py +0 -0
  109. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/types/__init__.py +0 -0
  110. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/types/flexible_schedule_list.py +0 -0
  111. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/client/utilities.py +0 -0
  112. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/__init__.py +0 -0
  113. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/_asyncio.py +0 -0
  114. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/_events.py +0 -0
  115. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/asyncio.py +0 -0
  116. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/context.py +0 -0
  117. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/services.py +0 -0
  118. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/sync.py +0 -0
  119. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/v1/__init__.py +0 -0
  120. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/v1/_asyncio.py +0 -0
  121. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/v1/_events.py +0 -0
  122. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/v1/asyncio.py +0 -0
  123. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/v1/context.py +0 -0
  124. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/v1/services.py +0 -0
  125. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/concurrency/v1/sync.py +0 -0
  126. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/context.py +0 -0
  127. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/deployments/__init__.py +0 -0
  128. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/deployments/base.py +0 -0
  129. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/deployments/deployments.py +0 -0
  130. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/deployments/flow_runs.py +0 -0
  131. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/deployments/runner.py +0 -0
  132. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/deployments/schedules.py +0 -0
  133. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/deployments/steps/__init__.py +0 -0
  134. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/deployments/steps/core.py +0 -0
  135. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/deployments/steps/pull.py +0 -0
  136. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/deployments/steps/utility.py +0 -0
  137. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/docker/__init__.py +0 -0
  138. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/docker/docker_image.py +0 -0
  139. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/engine.py +0 -0
  140. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/__init__.py +0 -0
  141. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/actions.py +0 -0
  142. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/cli/__init__.py +0 -0
  143. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/cli/automations.py +0 -0
  144. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/clients.py +0 -0
  145. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/filters.py +0 -0
  146. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/related.py +0 -0
  147. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/schemas/__init__.py +0 -0
  148. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/schemas/automations.py +0 -0
  149. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/schemas/deployment_triggers.py +0 -0
  150. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/schemas/events.py +0 -0
  151. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/schemas/labelling.py +0 -0
  152. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/utilities.py +0 -0
  153. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/events/worker.py +0 -0
  154. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/exceptions.py +0 -0
  155. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/filesystems.py +0 -0
  156. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/flow_engine.py +0 -0
  157. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/flow_runs.py +0 -0
  158. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/flows.py +0 -0
  159. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/futures.py +0 -0
  160. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/infrastructure/__init__.py +0 -0
  161. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/infrastructure/base.py +0 -0
  162. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/infrastructure/provisioners/__init__.py +0 -0
  163. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/infrastructure/provisioners/cloud_run.py +0 -0
  164. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/infrastructure/provisioners/coiled.py +0 -0
  165. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/infrastructure/provisioners/container_instance.py +0 -0
  166. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/infrastructure/provisioners/ecs.py +0 -0
  167. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/infrastructure/provisioners/modal.py +0 -0
  168. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/input/__init__.py +0 -0
  169. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/input/actions.py +0 -0
  170. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/input/run_input.py +0 -0
  171. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/locking/__init__.py +0 -0
  172. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/locking/filesystem.py +0 -0
  173. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/locking/memory.py +0 -0
  174. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/locking/protocol.py +0 -0
  175. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/logging/__init__.py +0 -0
  176. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/logging/configuration.py +0 -0
  177. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/logging/filters.py +0 -0
  178. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/logging/formatters.py +0 -0
  179. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/logging/handlers.py +0 -0
  180. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/logging/highlighters.py +0 -0
  181. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/logging/loggers.py +0 -0
  182. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/logging/logging.yml +0 -0
  183. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/main.py +0 -0
  184. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/plugins.py +0 -0
  185. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/py.typed +0 -0
  186. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/runner/__init__.py +0 -0
  187. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/runner/_observers.py +0 -0
  188. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/runner/runner.py +0 -0
  189. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/runner/server.py +0 -0
  190. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/runner/storage.py +0 -0
  191. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/runner/submit.py +0 -0
  192. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/runner/utils.py +0 -0
  193. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/runtime/__init__.py +0 -0
  194. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/runtime/deployment.py +0 -0
  195. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/runtime/flow_run.py +0 -0
  196. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/runtime/task_run.py +0 -0
  197. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/schedules.py +0 -0
  198. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/serializers.py +0 -0
  199. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/__init__.py +0 -0
  200. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/admin.py +0 -0
  201. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/artifacts.py +0 -0
  202. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/automations.py +0 -0
  203. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/block_capabilities.py +0 -0
  204. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/block_documents.py +0 -0
  205. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/block_schemas.py +0 -0
  206. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/block_types.py +0 -0
  207. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/clients.py +0 -0
  208. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/collections.py +0 -0
  209. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/collections_data/views/aggregate-worker-metadata.json +0 -0
  210. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/concurrency_limits.py +0 -0
  211. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/concurrency_limits_v2.py +0 -0
  212. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/csrf_token.py +0 -0
  213. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/dependencies.py +0 -0
  214. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/deployments.py +0 -0
  215. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/events.py +0 -0
  216. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/flow_run_states.py +0 -0
  217. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/flow_runs.py +0 -0
  218. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/flows.py +0 -0
  219. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/logs.py +0 -0
  220. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/middleware.py +0 -0
  221. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/root.py +0 -0
  222. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/run_history.py +0 -0
  223. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/saved_searches.py +0 -0
  224. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/server.py +0 -0
  225. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/static/prefect-logo-mark-gradient.png +0 -0
  226. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/task_run_states.py +0 -0
  227. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/task_runs.py +0 -0
  228. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/task_workers.py +0 -0
  229. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/templates.py +0 -0
  230. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/ui/__init__.py +0 -0
  231. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/ui/flow_runs.py +0 -0
  232. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/ui/flows.py +0 -0
  233. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/ui/schemas.py +0 -0
  234. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/ui/task_runs.py +0 -0
  235. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/validation.py +0 -0
  236. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/variables.py +0 -0
  237. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/work_queues.py +0 -0
  238. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/server/api/workers.py +0 -0
  239. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/__init__.py +0 -0
  240. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/base.py +0 -0
  241. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/constants.py +0 -0
  242. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/context.py +0 -0
  243. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/legacy.py +0 -0
  244. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/__init__.py +0 -0
  245. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/api.py +0 -0
  246. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/cli.py +0 -0
  247. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/client.py +0 -0
  248. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/cloud.py +0 -0
  249. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/deployments.py +0 -0
  250. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/experiments.py +0 -0
  251. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/flows.py +0 -0
  252. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/internal.py +0 -0
  253. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/logging.py +0 -0
  254. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/results.py +0 -0
  255. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/root.py +0 -0
  256. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/runner.py +0 -0
  257. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/server/__init__.py +0 -0
  258. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/server/api.py +0 -0
  259. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/server/database.py +0 -0
  260. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/server/deployments.py +0 -0
  261. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/server/ephemeral.py +0 -0
  262. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/server/events.py +0 -0
  263. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/server/flow_run_graph.py +0 -0
  264. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/server/root.py +0 -0
  265. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/server/services.py +0 -0
  266. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/server/tasks.py +0 -0
  267. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/server/ui.py +0 -0
  268. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/tasks.py +0 -0
  269. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/testing.py +0 -0
  270. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/models/worker.py +0 -0
  271. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/profiles.py +0 -0
  272. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/profiles.toml +0 -0
  273. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/settings/sources.py +0 -0
  274. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/states.py +0 -0
  275. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/task_engine.py +0 -0
  276. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/task_runners.py +0 -0
  277. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/task_runs.py +0 -0
  278. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/telemetry/__init__.py +0 -0
  279. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/telemetry/bootstrap.py +0 -0
  280. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/telemetry/instrumentation.py +0 -0
  281. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/telemetry/logging.py +0 -0
  282. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/telemetry/processors.py +0 -0
  283. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/telemetry/run_telemetry.py +0 -0
  284. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/telemetry/services.py +0 -0
  285. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/transactions.py +0 -0
  286. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/types/__init__.py +0 -0
  287. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/types/_datetime.py +0 -0
  288. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/types/entrypoint.py +0 -0
  289. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/types/names.py +0 -0
  290. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/__init__.py +0 -0
  291. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/_ast.py +0 -0
  292. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/_deprecated.py +0 -0
  293. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/_engine.py +0 -0
  294. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/_git.py +0 -0
  295. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/annotations.py +0 -0
  296. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/asyncutils.py +0 -0
  297. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/callables.py +0 -0
  298. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/collections.py +0 -0
  299. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/compat.py +0 -0
  300. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/context.py +0 -0
  301. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/dispatch.py +0 -0
  302. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/dockerutils.py +0 -0
  303. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/engine.py +0 -0
  304. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/filesystem.py +0 -0
  305. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/generics.py +0 -0
  306. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/hashing.py +0 -0
  307. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/importtools.py +0 -0
  308. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/math.py +0 -0
  309. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/names.py +0 -0
  310. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/processutils.py +0 -0
  311. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/pydantic.py +0 -0
  312. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/render_swagger.py +0 -0
  313. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/schema_tools/__init__.py +0 -0
  314. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/schema_tools/hydration.py +0 -0
  315. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/schema_tools/validation.py +0 -0
  316. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/services.py +0 -0
  317. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/slugify.py +0 -0
  318. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/templating.py +0 -0
  319. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/text.py +0 -0
  320. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/timeout.py +0 -0
  321. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/urls.py +0 -0
  322. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/utilities/visualization.py +0 -0
  323. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/variables.py +0 -0
  324. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/workers/__init__.py +0 -0
  325. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/workers/base.py +0 -0
  326. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/workers/block.py +0 -0
  327. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/workers/cloud.py +0 -0
  328. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/workers/process.py +0 -0
  329. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/workers/server.py +0 -0
  330. {prefect_client-3.4.2.dev1 → prefect_client-3.4.2.dev3}/src/prefect/workers/utilities.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: prefect-client
3
- Version: 3.4.2.dev1
3
+ Version: 3.4.2.dev3
4
4
  Summary: Workflow orchestration and management.
5
5
  Project-URL: Changelog, https://github.com/PrefectHQ/prefect/releases
6
6
  Project-URL: Documentation, https://docs.prefect.io
@@ -37,7 +37,7 @@ Requires-Dist: httpx[http2]!=0.23.2,>=0.23
37
37
  Requires-Dist: humanize<5.0.0,>=4.9.0
38
38
  Requires-Dist: importlib-metadata>=4.4; python_version < '3.10'
39
39
  Requires-Dist: jsonpatch<2.0,>=1.32
40
- Requires-Dist: jsonschema<5.0.0,>=4.0.0
40
+ Requires-Dist: jsonschema<5.0.0,>=4.18.0
41
41
  Requires-Dist: opentelemetry-api<2.0.0,>=1.27.0
42
42
  Requires-Dist: orjson<4.0,>=3.7
43
43
  Requires-Dist: packaging<25.1,>=21.3
@@ -41,7 +41,7 @@ dependencies = [
41
41
  "humanize>=4.9.0,<5.0.0",
42
42
  "importlib_metadata>=4.4;python_version<'3.10'",
43
43
  "jsonpatch>=1.32,<2.0",
44
- "jsonschema>=4.0.0,<5.0.0",
44
+ "jsonschema>=4.18.0,<5.0.0",
45
45
  "opentelemetry-api>=1.27.0,<2.0.0",
46
46
  "orjson>=3.7,<4.0",
47
47
  "packaging>=21.3,<25.1",
@@ -0,0 +1,5 @@
1
+ # Generated by versioningit
2
+ __version__ = "3.4.2.dev3"
3
+ __build_date__ = "2025-05-14 08:08:44.736788+00:00"
4
+ __git_commit__ = "951cfc2519e6d8677c42565c3e7b24fd647f31c8"
5
+ __dirty__ = False
@@ -0,0 +1,27 @@
1
+ import inspect
2
+ from typing import Any, Union
3
+
4
+ from prefect.filesystems import NullFileSystem, WritableFileSystem
5
+
6
+
7
+ async def call_explicitly_async_block_method(
8
+ block: Union[WritableFileSystem, NullFileSystem],
9
+ method: str,
10
+ args: tuple[Any, ...],
11
+ kwargs: dict[str, Any],
12
+ ) -> Any:
13
+ """
14
+ TODO: remove this once we have explicit async methods on all storage blocks
15
+
16
+ see https://github.com/PrefectHQ/prefect/issues/15008
17
+ """
18
+ if hasattr(block, f"a{method}"): # explicit async method
19
+ return await getattr(block, f"a{method}")(*args, **kwargs)
20
+ elif hasattr(getattr(block, method, None), "aio"): # sync_compatible
21
+ return await getattr(block, method).aio(block, *args, **kwargs)
22
+ else: # should not happen in prefect, but users can override impls
23
+ maybe_coro = getattr(block, method)(*args, **kwargs)
24
+ if inspect.isawaitable(maybe_coro):
25
+ return await maybe_coro
26
+ else:
27
+ return maybe_coro
@@ -1,11 +1,11 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  import asyncio
4
- import inspect
5
4
  import os
6
5
  import socket
7
6
  import threading
8
7
  import uuid
8
+ from datetime import datetime
9
9
  from functools import partial
10
10
  from operator import methodcaller
11
11
  from pathlib import Path
@@ -34,6 +34,8 @@ from typing_extensions import ParamSpec, Self
34
34
  import prefect
35
35
  import prefect.types._datetime
36
36
  from prefect._internal.compatibility.async_dispatch import async_dispatch
37
+ from prefect._internal.compatibility.blocks import call_explicitly_async_block_method
38
+ from prefect._internal.compatibility.deprecated import deprecated_callable
37
39
  from prefect._internal.concurrency.event_loop import get_running_loop
38
40
  from prefect._result_records import R, ResultRecord, ResultRecordMetadata
39
41
  from prefect.blocks.core import Block
@@ -285,29 +287,6 @@ def _format_user_supplied_storage_key(key: str) -> str:
285
287
  return key.format(**runtime_vars, parameters=prefect.runtime.task_run.parameters)
286
288
 
287
289
 
288
- async def _call_explicitly_async_block_method(
289
- block: WritableFileSystem | NullFileSystem,
290
- method: str,
291
- args: tuple[Any, ...],
292
- kwargs: dict[str, Any],
293
- ) -> Any:
294
- """
295
- TODO: remove this once we have explicit async methods on all storage blocks
296
-
297
- see https://github.com/PrefectHQ/prefect/issues/15008
298
- """
299
- if hasattr(block, f"a{method}"): # explicit async method
300
- return await getattr(block, f"a{method}")(*args, **kwargs)
301
- elif hasattr(getattr(block, method, None), "aio"): # sync_compatible
302
- return await getattr(block, method).aio(block, *args, **kwargs)
303
- else: # should not happen in prefect, but users can override impls
304
- maybe_coro = getattr(block, method)(*args, **kwargs)
305
- if inspect.isawaitable(maybe_coro):
306
- return await maybe_coro
307
- else:
308
- return maybe_coro
309
-
310
-
311
290
  T = TypeVar("T")
312
291
 
313
292
 
@@ -505,7 +484,7 @@ class ResultStore(BaseModel):
505
484
  # TODO: Add an `exists` method to commonly used storage blocks
506
485
  # so the entire payload doesn't need to be read
507
486
  try:
508
- metadata_content = await _call_explicitly_async_block_method(
487
+ metadata_content = await call_explicitly_async_block_method(
509
488
  self.metadata_storage, "read_path", (key,), {}
510
489
  )
511
490
  if metadata_content is None:
@@ -516,7 +495,7 @@ class ResultStore(BaseModel):
516
495
  return False
517
496
  else:
518
497
  try:
519
- content = await _call_explicitly_async_block_method(
498
+ content = await call_explicitly_async_block_method(
520
499
  self.result_storage, "read_path", (key,), {}
521
500
  )
522
501
  if content is None:
@@ -601,7 +580,7 @@ class ResultStore(BaseModel):
601
580
  self.result_storage = await aget_default_result_storage()
602
581
 
603
582
  if self.metadata_storage is not None:
604
- metadata_content = await _call_explicitly_async_block_method(
583
+ metadata_content = await call_explicitly_async_block_method(
605
584
  self.metadata_storage,
606
585
  "read_path",
607
586
  (key,),
@@ -611,7 +590,7 @@ class ResultStore(BaseModel):
611
590
  assert metadata.storage_key is not None, (
612
591
  "Did not find storage key in metadata"
613
592
  )
614
- result_content = await _call_explicitly_async_block_method(
593
+ result_content = await call_explicitly_async_block_method(
615
594
  self.result_storage,
616
595
  "read_path",
617
596
  (metadata.storage_key,),
@@ -624,7 +603,7 @@ class ResultStore(BaseModel):
624
603
  )
625
604
  await emit_result_read_event(self, resolved_key_path)
626
605
  else:
627
- content = await _call_explicitly_async_block_method(
606
+ content = await call_explicitly_async_block_method(
628
607
  self.result_storage,
629
608
  "read_path",
630
609
  (key,),
@@ -806,13 +785,13 @@ class ResultStore(BaseModel):
806
785
 
807
786
  # If metadata storage is configured, write result and metadata separately
808
787
  if self.metadata_storage is not None:
809
- await _call_explicitly_async_block_method(
788
+ await call_explicitly_async_block_method(
810
789
  self.result_storage,
811
790
  "write_path",
812
791
  (result_record.metadata.storage_key,),
813
792
  {"content": result_record.serialize_result()},
814
793
  )
815
- await _call_explicitly_async_block_method(
794
+ await call_explicitly_async_block_method(
816
795
  self.metadata_storage,
817
796
  "write_path",
818
797
  (base_key,),
@@ -821,7 +800,7 @@ class ResultStore(BaseModel):
821
800
  await emit_result_write_event(self, result_record.metadata.storage_key)
822
801
  # Otherwise, write the result metadata and result together
823
802
  else:
824
- await _call_explicitly_async_block_method(
803
+ await call_explicitly_async_block_method(
825
804
  self.result_storage,
826
805
  "write_path",
827
806
  (result_record.metadata.storage_key,),
@@ -998,6 +977,11 @@ class ResultStore(BaseModel):
998
977
 
999
978
  # TODO: These two methods need to find a new home
1000
979
 
980
+ @deprecated_callable(
981
+ start_date=datetime(2025, 5, 10),
982
+ end_date=datetime(2025, 11, 10),
983
+ help="Use `store_parameters` from `prefect.task_worker` instead.",
984
+ )
1001
985
  @sync_compatible
1002
986
  async def store_parameters(self, identifier: UUID, parameters: dict[str, Any]):
1003
987
  record = ResultRecord(
@@ -1007,21 +991,26 @@ class ResultStore(BaseModel):
1007
991
  ),
1008
992
  )
1009
993
 
1010
- await _call_explicitly_async_block_method(
994
+ await call_explicitly_async_block_method(
1011
995
  self.result_storage,
1012
996
  "write_path",
1013
997
  (f"parameters/{identifier}",),
1014
998
  {"content": record.serialize()},
1015
999
  )
1016
1000
 
1001
+ @deprecated_callable(
1002
+ start_date=datetime(2025, 5, 10),
1003
+ end_date=datetime(2025, 11, 10),
1004
+ help="Use `read_parameters` from `prefect.task_worker` instead.",
1005
+ )
1017
1006
  @sync_compatible
1018
1007
  async def read_parameters(self, identifier: UUID) -> dict[str, Any]:
1019
1008
  if self.result_storage is None:
1020
1009
  raise ValueError(
1021
1010
  "Result store is not configured - must have a result storage block to read parameters"
1022
1011
  )
1023
- record: ResultRecord[Any] = ResultRecord.deserialize(
1024
- await _call_explicitly_async_block_method(
1012
+ record: ResultRecord[Any] = ResultRecord[Any].deserialize(
1013
+ await call_explicitly_async_block_method(
1025
1014
  self.result_storage,
1026
1015
  "read_path",
1027
1016
  (f"parameters/{identifier}",),
@@ -22,17 +22,20 @@ from websockets.exceptions import InvalidStatus
22
22
 
23
23
  import prefect.types._datetime
24
24
  from prefect import Task
25
+ from prefect._internal.compatibility.blocks import call_explicitly_async_block_method
25
26
  from prefect._internal.concurrency.api import create_call, from_sync
26
27
  from prefect.cache_policies import DEFAULT, NO_CACHE
27
28
  from prefect.client.orchestration import get_client
28
29
  from prefect.client.schemas.objects import TaskRun
29
30
  from prefect.client.subscriptions import Subscription
30
31
  from prefect.logging.loggers import get_logger
31
- from prefect.results import ResultStore, get_or_create_default_task_scheduling_storage
32
- from prefect.settings import (
33
- PREFECT_API_URL,
34
- PREFECT_TASK_SCHEDULING_DELETE_FAILED_SUBMISSIONS,
32
+ from prefect.results import (
33
+ ResultRecord,
34
+ ResultRecordMetadata,
35
+ ResultStore,
36
+ get_or_create_default_task_scheduling_storage,
35
37
  )
38
+ from prefect.settings import get_current_settings
36
39
  from prefect.states import Pending
37
40
  from prefect.task_engine import run_task_async, run_task_sync
38
41
  from prefect.types import DateTime
@@ -43,6 +46,7 @@ from prefect.utilities.processutils import (
43
46
  _register_signal, # pyright: ignore[reportPrivateUsage]
44
47
  )
45
48
  from prefect.utilities.services import start_client_metrics_server
49
+ from prefect.utilities.timeout import timeout_async
46
50
  from prefect.utilities.urls import url_for
47
51
 
48
52
  if TYPE_CHECKING:
@@ -170,9 +174,13 @@ class TaskWorker:
170
174
  sys.exit(0)
171
175
 
172
176
  @sync_compatible
173
- async def start(self) -> None:
177
+ async def start(self, timeout: Optional[float] = None) -> None:
174
178
  """
175
179
  Starts a task worker, which runs the tasks provided in the constructor.
180
+
181
+ Args:
182
+ timeout: If provided, the task worker will exit after the given number of
183
+ seconds. Defaults to None, meaning the task worker will run indefinitely.
176
184
  """
177
185
  _register_signal(signal.SIGTERM, self.handle_sigterm)
178
186
 
@@ -181,14 +189,16 @@ class TaskWorker:
181
189
  async with asyncnullcontext() if self.started else self:
182
190
  logger.info("Starting task worker...")
183
191
  try:
184
- await self._subscribe_to_task_scheduling()
192
+ with timeout_async(timeout):
193
+ await self._subscribe_to_task_scheduling()
185
194
  except InvalidStatus as exc:
186
195
  if exc.response.status_code == 403:
187
196
  logger.error(
188
197
  "403: Could not establish a connection to the `/task_runs/subscriptions/scheduled`"
189
- f" endpoint found at:\n\n {PREFECT_API_URL.value()}"
190
- "\n\nPlease double-check the values of your"
191
- " `PREFECT_API_URL` and `PREFECT_API_KEY` environment variables."
198
+ f" endpoint found at:\n\n {get_current_settings().api.url}"
199
+ "\n\nPlease double-check the values of"
200
+ " `PREFECT_API_AUTH_STRING` and `PREFECT_SERVER_API_AUTH_STRING` if running a Prefect server "
201
+ "or `PREFECT_API_URL` and `PREFECT_API_KEY` environment variables if using Prefect Cloud."
192
202
  )
193
203
  else:
194
204
  raise
@@ -228,7 +238,7 @@ class TaskWorker:
228
238
  return True
229
239
 
230
240
  async def _subscribe_to_task_scheduling(self):
231
- base_url = PREFECT_API_URL.value()
241
+ base_url = get_current_settings().api.url
232
242
  if base_url is None:
233
243
  raise ValueError(
234
244
  "`PREFECT_API_URL` must be set to use the task worker. "
@@ -282,7 +292,7 @@ class TaskWorker:
282
292
  task = next((t for t in self.tasks if t.task_key == task_run.task_key), None)
283
293
 
284
294
  if not task:
285
- if PREFECT_TASK_SCHEDULING_DELETE_FAILED_SUBMISSIONS:
295
+ if get_current_settings().tasks.scheduling.delete_failed_submissions:
286
296
  logger.warning(
287
297
  f"Task {task_run.name!r} not found in task worker registry."
288
298
  )
@@ -298,12 +308,18 @@ class TaskWorker:
298
308
  run_context = None
299
309
  if should_try_to_read_parameters(task, task_run):
300
310
  parameters_id = task_run.state.state_details.task_parameters_id
311
+ if parameters_id is None:
312
+ logger.warning(
313
+ f"Task run {task_run.id!r} has no parameters ID. Skipping parameter retrieval."
314
+ )
315
+ return
316
+
301
317
  task.persist_result = True
302
318
  store = await ResultStore(
303
319
  result_storage=await get_or_create_default_task_scheduling_storage()
304
320
  ).update_for_task(task)
305
321
  try:
306
- run_data: dict[str, Any] = await store.read_parameters(parameters_id)
322
+ run_data: dict[str, Any] = await read_parameters(store, parameters_id)
307
323
  parameters = run_data.get("parameters", {})
308
324
  wait_for = run_data.get("wait_for", [])
309
325
  run_context = run_data.get("context", None)
@@ -312,7 +328,7 @@ class TaskWorker:
312
328
  f"Failed to read parameters for task run {task_run.id!r}",
313
329
  exc_info=exc,
314
330
  )
315
- if PREFECT_TASK_SCHEDULING_DELETE_FAILED_SUBMISSIONS.value():
331
+ if get_current_settings().tasks.scheduling.delete_failed_submissions:
316
332
  logger.info(
317
333
  f"Deleting task run {task_run.id!r} because it failed to submit"
318
334
  )
@@ -421,6 +437,7 @@ async def serve(
421
437
  *tasks: Task[P, R],
422
438
  limit: Optional[int] = 10,
423
439
  status_server_port: Optional[int] = None,
440
+ timeout: Optional[float] = None,
424
441
  ):
425
442
  """Serve the provided tasks so that their runs may be submitted to
426
443
  and executed in the engine. Tasks do not need to be within a flow run context to be
@@ -434,6 +451,8 @@ async def serve(
434
451
  - status_server_port: An optional port on which to start an HTTP server
435
452
  exposing status information about the task worker. If not provided, no
436
453
  status server will run.
454
+ - timeout: If provided, the task worker will exit after the given number of
455
+ seconds. Defaults to None, meaning the task worker will run indefinitely.
437
456
 
438
457
  Example:
439
458
  ```python
@@ -469,7 +488,13 @@ async def serve(
469
488
  status_server_task = loop.create_task(server.serve())
470
489
 
471
490
  try:
472
- await task_worker.start()
491
+ await task_worker.start(timeout=timeout)
492
+
493
+ except TimeoutError:
494
+ if timeout is not None:
495
+ logger.info(f"Task worker timed out after {timeout} seconds. Exiting...")
496
+ else:
497
+ raise
473
498
 
474
499
  except BaseExceptionGroup as exc: # novermin
475
500
  exceptions = exc.exceptions
@@ -492,3 +517,59 @@ async def serve(
492
517
  await status_server_task
493
518
  except asyncio.CancelledError:
494
519
  pass
520
+
521
+
522
+ async def store_parameters(
523
+ result_store: ResultStore, identifier: UUID, parameters: dict[str, Any]
524
+ ) -> None:
525
+ """Store parameters for a task run in the result store.
526
+
527
+ Args:
528
+ result_store: The result store to store the parameters in.
529
+ identifier: The identifier of the task run.
530
+ parameters: The parameters to store.
531
+ """
532
+ if result_store.result_storage is None:
533
+ raise ValueError(
534
+ "Result store is not configured - must have a result storage block to store parameters"
535
+ )
536
+ record = ResultRecord(
537
+ result=parameters,
538
+ metadata=ResultRecordMetadata(
539
+ serializer=result_store.serializer, storage_key=str(identifier)
540
+ ),
541
+ )
542
+
543
+ await call_explicitly_async_block_method(
544
+ result_store.result_storage,
545
+ "write_path",
546
+ (f"parameters/{identifier}",),
547
+ {"content": record.serialize()},
548
+ )
549
+
550
+
551
+ async def read_parameters(
552
+ result_store: ResultStore, identifier: UUID
553
+ ) -> dict[str, Any]:
554
+ """Read parameters for a task run from the result store.
555
+
556
+ Args:
557
+ result_store: The result store to read the parameters from.
558
+ identifier: The identifier of the task run.
559
+
560
+ Returns:
561
+ The parameters for the task run.
562
+ """
563
+ if result_store.result_storage is None:
564
+ raise ValueError(
565
+ "Result store is not configured - must have a result storage block to read parameters"
566
+ )
567
+ record: ResultRecord[Any] = ResultRecord[Any].deserialize(
568
+ await call_explicitly_async_block_method(
569
+ result_store.result_storage,
570
+ "read_path",
571
+ (f"parameters/{identifier}",),
572
+ {},
573
+ )
574
+ )
575
+ return record.result
@@ -810,6 +810,8 @@ class Task(Generic[P, R]):
810
810
  # store parameters for background tasks so that task worker
811
811
  # can retrieve them at runtime
812
812
  if deferred and (parameters or wait_for):
813
+ from prefect.task_worker import store_parameters
814
+
813
815
  parameters_id = uuid4()
814
816
  state.state_details.task_parameters_id = parameters_id
815
817
 
@@ -825,7 +827,7 @@ class Task(Generic[P, R]):
825
827
  data["parameters"] = parameters
826
828
  if wait_for:
827
829
  data["wait_for"] = wait_for
828
- await store.store_parameters(parameters_id, data)
830
+ await store_parameters(store, parameters_id, data)
829
831
 
830
832
  # collect task inputs
831
833
  task_inputs = {
@@ -911,6 +913,8 @@ class Task(Generic[P, R]):
911
913
  # store parameters for background tasks so that task worker
912
914
  # can retrieve them at runtime
913
915
  if deferred and (parameters or wait_for):
916
+ from prefect.task_worker import store_parameters
917
+
914
918
  parameters_id = uuid4()
915
919
  state.state_details.task_parameters_id = parameters_id
916
920
 
@@ -926,7 +930,7 @@ class Task(Generic[P, R]):
926
930
  data["parameters"] = parameters
927
931
  if wait_for:
928
932
  data["wait_for"] = wait_for
929
- await store.store_parameters(parameters_id, data)
933
+ await store_parameters(store, parameters_id, data)
930
934
 
931
935
  # collect task inputs
932
936
  task_inputs = {
@@ -1,5 +0,0 @@
1
- # Generated by versioningit
2
- __version__ = "3.4.2.dev1"
3
- __build_date__ = "2025-05-10 08:07:06.027110+00:00"
4
- __git_commit__ = "f9346cb6934abec911bf71b8a871eeb05300382f"
5
- __dirty__ = False