prefect-client 3.4.11.dev5__tar.gz → 3.4.12.dev1__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 (341) hide show
  1. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/PKG-INFO +1 -1
  2. prefect_client-3.4.12.dev1/src/prefect/_build_info.py +5 -0
  3. prefect_client-3.4.12.dev1/src/prefect/_internal/installation.py +60 -0
  4. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/__init__.py +1 -1
  5. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/__init__.py +2 -2
  6. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/_leases.py +2 -0
  7. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/context.py +1 -1
  8. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/deployments/base.py +1 -1
  9. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/deployments/steps/core.py +6 -3
  10. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/deployments/steps/pull.py +1 -1
  11. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/infrastructure/provisioners/coiled.py +2 -5
  12. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/infrastructure/provisioners/ecs.py +2 -5
  13. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/infrastructure/provisioners/modal.py +2 -3
  14. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/locking/memory.py +4 -0
  15. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/logging/handlers.py +24 -6
  16. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/transactions.py +27 -14
  17. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/dockerutils.py +1 -3
  18. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/workers/process.py +1 -1
  19. prefect_client-3.4.11.dev5/src/prefect/_build_info.py +0 -5
  20. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/.gitignore +0 -0
  21. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/LICENSE +0 -0
  22. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/README.md +0 -0
  23. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/pyproject.toml +0 -0
  24. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/.prefectignore +0 -0
  25. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/AGENTS.md +0 -0
  26. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/__init__.py +0 -0
  27. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/__main__.py +0 -0
  28. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_experimental/__init__.py +0 -0
  29. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_experimental/bundles/__init__.py +0 -0
  30. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_experimental/bundles/execute.py +0 -0
  31. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_experimental/lineage.py +0 -0
  32. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_experimental/sla/__init__.py +0 -0
  33. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_experimental/sla/client.py +0 -0
  34. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_experimental/sla/objects.py +0 -0
  35. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/__init__.py +0 -0
  36. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/_logging.py +0 -0
  37. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/compatibility/__init__.py +0 -0
  38. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/compatibility/async_dispatch.py +0 -0
  39. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/compatibility/blocks.py +0 -0
  40. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/compatibility/deprecated.py +0 -0
  41. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/compatibility/migration.py +0 -0
  42. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/concurrency/__init__.py +0 -0
  43. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/concurrency/api.py +0 -0
  44. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/concurrency/calls.py +0 -0
  45. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/concurrency/cancellation.py +0 -0
  46. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/concurrency/event_loop.py +0 -0
  47. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/concurrency/inspection.py +0 -0
  48. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/concurrency/primitives.py +0 -0
  49. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/concurrency/services.py +0 -0
  50. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/concurrency/threads.py +0 -0
  51. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/concurrency/waiters.py +0 -0
  52. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/integrations.py +0 -0
  53. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/pydantic/__init__.py +0 -0
  54. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/pydantic/schemas.py +0 -0
  55. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/pydantic/v1_schema.py +0 -0
  56. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/pydantic/v2_schema.py +0 -0
  57. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/pydantic/v2_validated_func.py +0 -0
  58. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/pytz.py +0 -0
  59. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/retries.py +0 -0
  60. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/schemas/__init__.py +0 -0
  61. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/schemas/bases.py +0 -0
  62. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/schemas/fields.py +0 -0
  63. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/schemas/serializers.py +0 -0
  64. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/schemas/validators.py +0 -0
  65. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/uuid7.py +0 -0
  66. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_internal/websockets.py +0 -0
  67. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_result_records.py +0 -0
  68. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_vendor/croniter/__init__.py +0 -0
  69. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_vendor/croniter/croniter.py +0 -0
  70. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_versioning.py +0 -0
  71. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/_waiters.py +0 -0
  72. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/agent.py +0 -0
  73. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/artifacts.py +0 -0
  74. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/assets/__init__.py +0 -0
  75. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/assets/core.py +0 -0
  76. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/assets/materialize.py +0 -0
  77. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/automations.py +0 -0
  78. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/blocks/__init__.py +0 -0
  79. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/blocks/abstract.py +0 -0
  80. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/blocks/core.py +0 -0
  81. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/blocks/fields.py +0 -0
  82. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/blocks/notifications.py +0 -0
  83. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/blocks/redis.py +0 -0
  84. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/blocks/system.py +0 -0
  85. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/blocks/webhook.py +0 -0
  86. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/cache_policies.py +0 -0
  87. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/base.py +0 -0
  88. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/cloud.py +0 -0
  89. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/collections.py +0 -0
  90. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/constants.py +0 -0
  91. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_artifacts/__init__.py +0 -0
  92. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_artifacts/client.py +0 -0
  93. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_automations/__init__.py +0 -0
  94. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_automations/client.py +0 -0
  95. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_blocks_documents/__init__.py +0 -0
  96. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_blocks_documents/client.py +0 -0
  97. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_blocks_schemas/__init__.py +0 -0
  98. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_blocks_schemas/client.py +0 -0
  99. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_blocks_types/__init__.py +0 -0
  100. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_blocks_types/client.py +0 -0
  101. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_concurrency_limits/__init__.py +0 -0
  102. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_concurrency_limits/client.py +0 -0
  103. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_deployments/__init__.py +0 -0
  104. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_deployments/client.py +0 -0
  105. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_flow_runs/__init__.py +0 -0
  106. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_flow_runs/client.py +0 -0
  107. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_flows/__init__.py +0 -0
  108. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_flows/client.py +0 -0
  109. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_logs/__init__.py +0 -0
  110. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_logs/client.py +0 -0
  111. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_variables/__init__.py +0 -0
  112. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_variables/client.py +0 -0
  113. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_work_pools/__init__.py +0 -0
  114. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/_work_pools/client.py +0 -0
  115. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/base.py +0 -0
  116. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/orchestration/routes.py +0 -0
  117. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/schemas/__init__.py +0 -0
  118. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/schemas/actions.py +0 -0
  119. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/schemas/filters.py +0 -0
  120. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/schemas/objects.py +0 -0
  121. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/schemas/responses.py +0 -0
  122. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/schemas/schedules.py +0 -0
  123. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/schemas/sorting.py +0 -0
  124. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/subscriptions.py +0 -0
  125. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/types/__init__.py +0 -0
  126. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/types/flexible_schedule_list.py +0 -0
  127. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/client/utilities.py +0 -0
  128. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/__init__.py +0 -0
  129. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/_asyncio.py +0 -0
  130. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/_events.py +0 -0
  131. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/asyncio.py +0 -0
  132. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/context.py +0 -0
  133. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/services.py +0 -0
  134. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/sync.py +0 -0
  135. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/v1/__init__.py +0 -0
  136. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/v1/_asyncio.py +0 -0
  137. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/v1/_events.py +0 -0
  138. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/v1/asyncio.py +0 -0
  139. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/v1/context.py +0 -0
  140. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/v1/services.py +0 -0
  141. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/concurrency/v1/sync.py +0 -0
  142. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/deployments/__init__.py +0 -0
  143. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/deployments/deployments.py +0 -0
  144. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/deployments/flow_runs.py +0 -0
  145. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/deployments/runner.py +0 -0
  146. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/deployments/schedules.py +0 -0
  147. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/deployments/steps/__init__.py +0 -0
  148. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/deployments/steps/utility.py +0 -0
  149. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/docker/__init__.py +0 -0
  150. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/docker/docker_image.py +0 -0
  151. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/engine.py +0 -0
  152. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/__init__.py +0 -0
  153. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/actions.py +0 -0
  154. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/cli/__init__.py +0 -0
  155. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/cli/automations.py +0 -0
  156. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/clients.py +0 -0
  157. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/filters.py +0 -0
  158. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/related.py +0 -0
  159. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/schemas/__init__.py +0 -0
  160. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/schemas/automations.py +0 -0
  161. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/schemas/deployment_triggers.py +0 -0
  162. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/schemas/events.py +0 -0
  163. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/schemas/labelling.py +0 -0
  164. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/utilities.py +0 -0
  165. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/events/worker.py +0 -0
  166. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/exceptions.py +0 -0
  167. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/filesystems.py +0 -0
  168. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/flow_engine.py +0 -0
  169. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/flow_runs.py +0 -0
  170. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/flows.py +0 -0
  171. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/futures.py +0 -0
  172. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/infrastructure/__init__.py +0 -0
  173. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/infrastructure/base.py +0 -0
  174. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/infrastructure/provisioners/__init__.py +0 -0
  175. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/infrastructure/provisioners/cloud_run.py +0 -0
  176. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/infrastructure/provisioners/container_instance.py +0 -0
  177. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/input/__init__.py +0 -0
  178. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/input/actions.py +0 -0
  179. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/input/run_input.py +0 -0
  180. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/locking/__init__.py +0 -0
  181. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/locking/filesystem.py +0 -0
  182. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/locking/protocol.py +0 -0
  183. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/logging/__init__.py +0 -0
  184. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/logging/clients.py +0 -0
  185. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/logging/configuration.py +0 -0
  186. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/logging/filters.py +0 -0
  187. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/logging/formatters.py +0 -0
  188. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/logging/highlighters.py +0 -0
  189. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/logging/loggers.py +0 -0
  190. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/logging/logging.yml +0 -0
  191. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/main.py +0 -0
  192. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/plugins.py +0 -0
  193. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/py.typed +0 -0
  194. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/results.py +0 -0
  195. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/runner/__init__.py +0 -0
  196. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/runner/_observers.py +0 -0
  197. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/runner/runner.py +0 -0
  198. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/runner/server.py +0 -0
  199. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/runner/storage.py +0 -0
  200. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/runner/submit.py +0 -0
  201. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/runner/utils.py +0 -0
  202. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/runtime/__init__.py +0 -0
  203. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/runtime/deployment.py +0 -0
  204. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/runtime/flow_run.py +0 -0
  205. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/runtime/task_run.py +0 -0
  206. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/schedules.py +0 -0
  207. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/serializers.py +0 -0
  208. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/__init__.py +0 -0
  209. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/admin.py +0 -0
  210. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/artifacts.py +0 -0
  211. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/automations.py +0 -0
  212. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/block_capabilities.py +0 -0
  213. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/block_documents.py +0 -0
  214. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/block_schemas.py +0 -0
  215. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/block_types.py +0 -0
  216. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/clients.py +0 -0
  217. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/collections.py +0 -0
  218. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/collections_data/views/aggregate-worker-metadata.json +0 -0
  219. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/concurrency_limits.py +0 -0
  220. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/concurrency_limits_v2.py +0 -0
  221. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/csrf_token.py +0 -0
  222. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/dependencies.py +0 -0
  223. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/deployments.py +0 -0
  224. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/events.py +0 -0
  225. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/flow_run_states.py +0 -0
  226. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/flow_runs.py +0 -0
  227. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/flows.py +0 -0
  228. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/logs.py +0 -0
  229. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/middleware.py +0 -0
  230. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/root.py +0 -0
  231. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/run_history.py +0 -0
  232. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/saved_searches.py +0 -0
  233. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/server.py +0 -0
  234. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/static/prefect-logo-mark-gradient.png +0 -0
  235. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/task_run_states.py +0 -0
  236. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/task_runs.py +0 -0
  237. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/task_workers.py +0 -0
  238. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/templates.py +0 -0
  239. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/ui/__init__.py +0 -0
  240. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/ui/flow_runs.py +0 -0
  241. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/ui/flows.py +0 -0
  242. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/ui/schemas.py +0 -0
  243. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/ui/task_runs.py +0 -0
  244. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/validation.py +0 -0
  245. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/variables.py +0 -0
  246. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/work_queues.py +0 -0
  247. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/server/api/workers.py +0 -0
  248. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/__init__.py +0 -0
  249. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/base.py +0 -0
  250. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/constants.py +0 -0
  251. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/context.py +0 -0
  252. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/legacy.py +0 -0
  253. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/__init__.py +0 -0
  254. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/_defaults.py +0 -0
  255. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/api.py +0 -0
  256. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/cli.py +0 -0
  257. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/client.py +0 -0
  258. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/cloud.py +0 -0
  259. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/deployments.py +0 -0
  260. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/experiments.py +0 -0
  261. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/flows.py +0 -0
  262. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/internal.py +0 -0
  263. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/logging.py +0 -0
  264. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/results.py +0 -0
  265. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/root.py +0 -0
  266. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/runner.py +0 -0
  267. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/__init__.py +0 -0
  268. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/api.py +0 -0
  269. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/concurrency.py +0 -0
  270. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/database.py +0 -0
  271. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/deployments.py +0 -0
  272. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/ephemeral.py +0 -0
  273. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/events.py +0 -0
  274. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/flow_run_graph.py +0 -0
  275. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/logs.py +0 -0
  276. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/root.py +0 -0
  277. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/services.py +0 -0
  278. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/tasks.py +0 -0
  279. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/server/ui.py +0 -0
  280. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/tasks.py +0 -0
  281. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/testing.py +0 -0
  282. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/models/worker.py +0 -0
  283. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/profiles.py +0 -0
  284. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/profiles.toml +0 -0
  285. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/settings/sources.py +0 -0
  286. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/states.py +0 -0
  287. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/task_engine.py +0 -0
  288. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/task_runners.py +0 -0
  289. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/task_runs.py +0 -0
  290. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/task_worker.py +0 -0
  291. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/tasks.py +0 -0
  292. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/telemetry/__init__.py +0 -0
  293. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/telemetry/bootstrap.py +0 -0
  294. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/telemetry/instrumentation.py +0 -0
  295. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/telemetry/logging.py +0 -0
  296. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/telemetry/processors.py +0 -0
  297. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/telemetry/run_telemetry.py +0 -0
  298. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/telemetry/services.py +0 -0
  299. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/types/__init__.py +0 -0
  300. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/types/_datetime.py +0 -0
  301. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/types/entrypoint.py +0 -0
  302. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/types/names.py +0 -0
  303. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/__init__.py +0 -0
  304. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/_ast.py +0 -0
  305. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/_deprecated.py +0 -0
  306. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/_engine.py +0 -0
  307. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/_git.py +0 -0
  308. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/annotations.py +0 -0
  309. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/asyncutils.py +0 -0
  310. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/callables.py +0 -0
  311. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/collections.py +0 -0
  312. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/compat.py +0 -0
  313. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/context.py +0 -0
  314. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/dispatch.py +0 -0
  315. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/engine.py +0 -0
  316. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/filesystem.py +0 -0
  317. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/generics.py +0 -0
  318. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/hashing.py +0 -0
  319. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/importtools.py +0 -0
  320. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/math.py +0 -0
  321. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/names.py +0 -0
  322. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/processutils.py +0 -0
  323. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/pydantic.py +0 -0
  324. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/render_swagger.py +0 -0
  325. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/schema_tools/__init__.py +0 -0
  326. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/schema_tools/hydration.py +0 -0
  327. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/schema_tools/validation.py +0 -0
  328. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/services.py +0 -0
  329. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/slugify.py +0 -0
  330. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/templating.py +0 -0
  331. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/text.py +0 -0
  332. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/timeout.py +0 -0
  333. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/urls.py +0 -0
  334. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/utilities/visualization.py +0 -0
  335. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/variables.py +0 -0
  336. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/workers/__init__.py +0 -0
  337. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/workers/base.py +0 -0
  338. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/workers/block.py +0 -0
  339. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/workers/cloud.py +0 -0
  340. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/src/prefect/workers/server.py +0 -0
  341. {prefect_client-3.4.11.dev5 → prefect_client-3.4.12.dev1}/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.11.dev5
3
+ Version: 3.4.12.dev1
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
@@ -0,0 +1,5 @@
1
+ # Generated by versioningit
2
+ __version__ = "3.4.12.dev1"
3
+ __build_date__ = "2025-08-02 08:08:42.755918+00:00"
4
+ __git_commit__ = "4fee08bf0dfe814941b70db3585eab891397519c"
5
+ __dirty__ = False
@@ -0,0 +1,60 @@
1
+ import importlib
2
+ import subprocess
3
+ import sys
4
+
5
+ import prefect.utilities.processutils
6
+
7
+
8
+ def install_packages(
9
+ packages: list[str], stream_output: bool = False, upgrade: bool = False
10
+ ):
11
+ """
12
+ Install packages using uv if available, otherwise use pip.
13
+ """
14
+ base_command = ["pip", "install", *packages]
15
+ if upgrade:
16
+ base_command.append("--upgrade")
17
+ if stream_output:
18
+ stdout = sys.stdout
19
+ stderr = sys.stderr
20
+ else:
21
+ stdout = subprocess.DEVNULL
22
+ stderr = subprocess.DEVNULL
23
+ try:
24
+ uv = importlib.import_module("uv")
25
+
26
+ command = [uv.find_uv_bin(), *base_command]
27
+ subprocess.check_call(
28
+ command,
29
+ stdout=stdout,
30
+ stderr=stderr,
31
+ )
32
+ except (ImportError, ModuleNotFoundError, FileNotFoundError):
33
+ command = [sys.executable, "-m", *base_command]
34
+ subprocess.check_call(
35
+ command,
36
+ stdout=stdout,
37
+ stderr=stderr,
38
+ )
39
+
40
+
41
+ async def ainstall_packages(
42
+ packages: list[str], stream_output: bool = False, upgrade: bool = False
43
+ ):
44
+ """
45
+ Install packages using uv if available, otherwise use pip.
46
+ """
47
+ base_command = ["pip", "install", *packages]
48
+ if upgrade:
49
+ base_command.append("--upgrade")
50
+ try:
51
+ uv = importlib.import_module("uv")
52
+
53
+ await prefect.utilities.processutils.run_process(
54
+ [uv.find_uv_bin(), *base_command], stream_output=stream_output
55
+ )
56
+ except (ImportError, ModuleNotFoundError, FileNotFoundError):
57
+ await prefect.utilities.processutils.run_process(
58
+ [sys.executable, "-m", *base_command],
59
+ stream_output=stream_output,
60
+ )
@@ -1,5 +1,5 @@
1
1
  """
2
- Asynchronous client implementation for communicating with the [Prefect REST API](/api-ref/rest-api/).
2
+ Asynchronous client implementation for communicating with the [Prefect REST API](https://docs.prefect.io/v3/api-ref/rest-api/).
3
3
 
4
4
  Explore the client by communicating with an in-memory webserver - no setup required:
5
5
 
@@ -279,7 +279,7 @@ class PrefectClient(
279
279
  WorkPoolAsyncClient,
280
280
  ):
281
281
  """
282
- An asynchronous client for interacting with the [Prefect REST API](/api-ref/rest-api/).
282
+ An asynchronous client for interacting with the [Prefect REST API](https://docs.prefect.io/v3/api-ref/rest-api/).
283
283
 
284
284
  Args:
285
285
  api: the REST API URL or FastAPI application to connect to
@@ -1142,7 +1142,7 @@ class SyncPrefectClient(
1142
1142
  WorkPoolClient,
1143
1143
  ):
1144
1144
  """
1145
- A synchronous client for interacting with the [Prefect REST API](/api-ref/rest-api/).
1145
+ A synchronous client for interacting with the [Prefect REST API](https://docs.prefect.io/v3/api-ref/rest-api/).
1146
1146
 
1147
1147
  Args:
1148
1148
  api: the REST API URL or FastAPI application to connect to
@@ -61,6 +61,8 @@ def maintain_concurrency_lease(
61
61
  with WatcherThreadCancelScope() as cancel_scope:
62
62
 
63
63
  def handle_lease_renewal_failure(future: concurrent.futures.Future[None]):
64
+ if future.cancelled():
65
+ return
64
66
  exc = future.exception()
65
67
  if exc:
66
68
  try:
@@ -3,7 +3,7 @@ Async and thread safe models for passing runtime context data.
3
3
 
4
4
  These contexts should never be directly mutated by the user.
5
5
 
6
- For more user-accessible information about the current run, see [`prefect.runtime`](../runtime/flow_run).
6
+ For more user-accessible information about the current run, see [`prefect.runtime`](https://docs.prefect.io/v3/api-ref/python/prefect-runtime-flow_run).
7
7
  """
8
8
 
9
9
  import asyncio
@@ -2,7 +2,7 @@
2
2
  Core primitives for managing Prefect deployments via `prefect deploy`, providing a minimally opinionated
3
3
  build system for managing flows and deployments.
4
4
 
5
- To get started, follow along with [the deloyments tutorial](/tutorials/deployments/).
5
+ To get started, follow along with [the deployments tutorial](https://docs.prefect.io/v3/how-to-guides/deployments/create-deployments).
6
6
  """
7
7
 
8
8
  from __future__ import annotations
@@ -5,16 +5,17 @@ Deployment steps are YAML representations of Python functions along with their i
5
5
 
6
6
  Whenever a step is run, the following actions are taken:
7
7
 
8
- - The step's inputs and block / variable references are resolved (see [the `prefect deploy` documentation](/guides/prefect-deploy/#templating-options) for more details)
8
+ - The step's inputs and block / variable references are resolved (see [the `prefect deploy` documentation](https://docs.prefect.io/v3/how-to-guides/deployments/prefect-yaml#templating-options) for more details)
9
9
  - The step's function is imported; if it cannot be found, the `requires` keyword is used to install the necessary packages
10
10
  - The step's function is called with the resolved inputs
11
11
  - The step's output is returned and used to resolve inputs for subsequent steps
12
12
  """
13
13
 
14
+ from __future__ import annotations
15
+
14
16
  import os
15
17
  import re
16
18
  import subprocess
17
- import sys
18
19
  import warnings
19
20
  from copy import deepcopy
20
21
  from importlib import import_module
@@ -22,6 +23,7 @@ from typing import Any, Dict, List, Optional, Tuple, Union
22
23
 
23
24
  from prefect._internal.compatibility.deprecated import PrefectDeprecationWarning
24
25
  from prefect._internal.concurrency.api import Call, from_async
26
+ from prefect._internal.installation import install_packages
25
27
  from prefect._internal.integrations import KNOWN_EXTRAS_FOR_PACKAGES
26
28
  from prefect.logging.loggers import get_logger
27
29
  from prefect.settings import PREFECT_DEBUG_MODE
@@ -90,7 +92,8 @@ def _get_function_for_step(
90
92
  for package in packages
91
93
  if package
92
94
  ]
93
- subprocess.check_call([sys.executable, "-m", "pip", "install", *packages])
95
+ install_packages(packages, stream_output=True)
96
+
94
97
  except subprocess.CalledProcessError:
95
98
  get_logger("deployments.steps.core").warning(
96
99
  "Unable to install required packages for %s", fully_qualified_name
@@ -157,7 +157,7 @@ def git_clone(
157
157
  repository: https://github.com/org/repo.git
158
158
  access_token: "{{ prefect.blocks.secret.github-access-token }}" # Requires creation of a Secret block
159
159
  ```
160
- Note that you will need to [create a Secret block](/concepts/blocks/#using-existing-block-types) to store the
160
+ Note that you will need to [create a Secret block](https://docs.prefect.io/v3/concepts/blocks/#pre-registered-blocks) to store the
161
161
  value of your git credentials. You can also store a username/password combo or token prefix (e.g. `x-token-auth`)
162
162
  in your secret block. Refer to your git providers documentation for the correct authentication schema.
163
163
 
@@ -1,6 +1,4 @@
1
1
  import importlib
2
- import shlex
3
- import sys
4
2
  from copy import deepcopy
5
3
  from types import ModuleType
6
4
  from typing import TYPE_CHECKING, Any, Dict, Optional
@@ -10,6 +8,7 @@ from rich.console import Console
10
8
  from rich.progress import Progress, SpinnerColumn, TextColumn
11
9
  from rich.prompt import Confirm
12
10
 
11
+ from prefect._internal.installation import ainstall_packages
13
12
  from prefect.client.schemas.actions import BlockDocumentCreate
14
13
  from prefect.client.schemas.objects import BlockDocument
15
14
  from prefect.client.utilities import inject_client
@@ -66,9 +65,7 @@ class CoiledPushProvisioner:
66
65
  task = progress.add_task("coiled install")
67
66
  progress.start()
68
67
  global coiled
69
- await run_process(
70
- [shlex.quote(sys.executable), "-m", "pip", "install", "coiled"]
71
- )
68
+ await ainstall_packages(["coiled"])
72
69
  coiled = importlib.import_module("coiled")
73
70
  progress.advance(task)
74
71
 
@@ -6,8 +6,6 @@ import contextvars
6
6
  import importlib
7
7
  import ipaddress
8
8
  import json
9
- import shlex
10
- import sys
11
9
  from copy import deepcopy
12
10
  from functools import partial
13
11
  from textwrap import dedent
@@ -23,6 +21,7 @@ from rich.progress import Progress, SpinnerColumn, TextColumn
23
21
  from rich.prompt import Confirm
24
22
  from rich.syntax import Syntax
25
23
 
24
+ from prefect._internal.installation import ainstall_packages
26
25
  from prefect.cli._prompts import prompt
27
26
  from prefect.client.schemas.actions import BlockDocumentCreate
28
27
  from prefect.client.utilities import inject_client
@@ -1121,9 +1120,7 @@ class ElasticContainerServicePushProvisioner:
1121
1120
 
1122
1121
  async def _prompt_boto3_installation(self):
1123
1122
  global boto3
1124
- await run_process(
1125
- [shlex.quote(sys.executable), "-m", "pip", "install", "boto3"]
1126
- )
1123
+ await ainstall_packages(["boto3"])
1127
1124
  boto3 = importlib.import_module("boto3")
1128
1125
 
1129
1126
  @staticmethod
@@ -10,6 +10,7 @@ from rich.console import Console
10
10
  from rich.progress import Progress, SpinnerColumn, TextColumn
11
11
  from rich.prompt import Confirm
12
12
 
13
+ from prefect._internal.installation import ainstall_packages
13
14
  from prefect.client.schemas.actions import BlockDocumentCreate
14
15
  from prefect.client.schemas.objects import BlockDocument
15
16
  from prefect.client.utilities import inject_client
@@ -66,9 +67,7 @@ class ModalPushProvisioner:
66
67
  task = progress.add_task("modal install")
67
68
  progress.start()
68
69
  global modal
69
- await run_process(
70
- [shlex.quote(sys.executable), "-m", "pip", "install", "modal"]
71
- )
70
+ await ainstall_packages(["modal"])
72
71
  modal = importlib.import_module("modal")
73
72
  progress.advance(task)
74
73
 
@@ -33,6 +33,7 @@ class MemoryLockManager(LockManager):
33
33
  """
34
34
 
35
35
  _instance = None
36
+ _initialized = False
36
37
 
37
38
  def __new__(cls, *args: Any, **kwargs: Any) -> Self:
38
39
  if cls._instance is None:
@@ -40,8 +41,11 @@ class MemoryLockManager(LockManager):
40
41
  return cls._instance
41
42
 
42
43
  def __init__(self):
44
+ if self.__class__._initialized:
45
+ return
43
46
  self._locks_dict_lock = threading.Lock()
44
47
  self._locks: dict[str, _LockInfo] = {}
48
+ self.__class__._initialized = True
45
49
 
46
50
  def _expire_lock(self, key: str):
47
51
  """
@@ -230,22 +230,40 @@ class APILogHandler(logging.Handler):
230
230
  except ValueError:
231
231
  flow_run_id = None
232
232
 
233
+ formatted_message = self.format(record)
234
+
233
235
  log = LogCreate(
234
236
  flow_run_id=flow_run_id,
235
237
  task_run_id=task_run_id,
236
238
  worker_id=worker_id,
237
239
  name=record.name,
238
240
  level=record.levelno,
239
- timestamp=from_timestamp(getattr(record, "created", None) or time.time()), # pyright: ignore[reportArgumentType] DateTime is split into two types depending on Python version
240
- message=self.format(record),
241
+ timestamp=from_timestamp(getattr(record, "created", None) or time.time()), # pyright: ignore[reportArgumentType]
242
+ message=formatted_message,
241
243
  ).model_dump(mode="json")
242
244
 
243
245
  log_size = log["__payload_size__"] = self._get_payload_size(log)
244
246
  if log_size > PREFECT_LOGGING_TO_API_MAX_LOG_SIZE.value():
245
- raise ValueError(
246
- f"Log of size {log_size} is greater than the max size of "
247
- f"{PREFECT_LOGGING_TO_API_MAX_LOG_SIZE.value()}"
248
- )
247
+ max_size = PREFECT_LOGGING_TO_API_MAX_LOG_SIZE.value()
248
+ oversize = log_size - max_size
249
+ BUFFER = 50
250
+ truncated_length = max(len(formatted_message) - oversize - BUFFER, 0)
251
+ truncated_message = formatted_message[:truncated_length] + "... [truncated]"
252
+
253
+ log = LogCreate(
254
+ flow_run_id=flow_run_id,
255
+ task_run_id=task_run_id,
256
+ worker_id=worker_id,
257
+ name=record.name,
258
+ level=record.levelno,
259
+ timestamp=from_timestamp(
260
+ getattr(record, "created", None) or time.time() # pyright: ignore[reportArgumentType] DateTime is split into two types depending on Python version
261
+ ),
262
+ message=truncated_message,
263
+ ).model_dump(mode="json")
264
+
265
+ log["__payload_truncated__"] = True
266
+ log["__payload_size__"] = self._get_payload_size(log)
249
267
 
250
268
  return log
251
269
 
@@ -5,6 +5,7 @@ import asyncio
5
5
  import copy
6
6
  import inspect
7
7
  import logging
8
+ import uuid
8
9
  from contextlib import asynccontextmanager, contextmanager
9
10
  from contextvars import ContextVar, Token
10
11
  from functools import partial
@@ -84,6 +85,7 @@ class BaseTransaction(ContextModel, abc.ABC):
84
85
  write_on_commit: bool = True
85
86
  _stored_values: dict[str, Any] = PrivateAttr(default_factory=dict)
86
87
  _staged_value: ResultRecord[Any] | Any = None
88
+ _holder: str = PrivateAttr(default_factory=lambda: str(uuid.uuid4()))
87
89
  __var__: ClassVar[ContextVar[Self]] = ContextVar("transaction")
88
90
 
89
91
  def set(self, name: str, value: Any) -> None:
@@ -249,6 +251,11 @@ class BaseTransaction(ContextModel, abc.ABC):
249
251
  def get_active(cls: Type[Self]) -> Optional[Self]:
250
252
  return cls.__var__.get(None)
251
253
 
254
+ def __eq__(self, other: Any) -> bool:
255
+ if not isinstance(other, BaseTransaction):
256
+ return False
257
+ return dict(self) == dict(other)
258
+
252
259
 
253
260
  class Transaction(BaseTransaction):
254
261
  """
@@ -297,7 +304,7 @@ class Transaction(BaseTransaction):
297
304
  and self.isolation_level == IsolationLevel.SERIALIZABLE
298
305
  ):
299
306
  self.logger.debug(f"Acquiring lock for transaction {self.key!r}")
300
- self.store.acquire_lock(self.key)
307
+ self.store.acquire_lock(self.key, holder=self._holder)
301
308
  if (
302
309
  not self.overwrite
303
310
  and self.store
@@ -308,7 +315,7 @@ class Transaction(BaseTransaction):
308
315
 
309
316
  def read(self) -> ResultRecord[Any] | None:
310
317
  if self.store and self.key:
311
- return self.store.read(key=self.key)
318
+ return self.store.read(key=self.key, holder=self._holder)
312
319
  return None
313
320
 
314
321
  def reset(self) -> None:
@@ -334,7 +341,7 @@ class Transaction(BaseTransaction):
334
341
  and self.isolation_level == IsolationLevel.SERIALIZABLE
335
342
  ):
336
343
  self.logger.debug(f"Releasing lock for transaction {self.key!r}")
337
- self.store.release_lock(self.key)
344
+ self.store.release_lock(self.key, holder=self._holder)
338
345
 
339
346
  return False
340
347
 
@@ -350,9 +357,13 @@ class Transaction(BaseTransaction):
350
357
 
351
358
  if self.store and self.key and self.write_on_commit:
352
359
  if isinstance(self._staged_value, ResultRecord):
353
- self.store.persist_result_record(result_record=self._staged_value)
360
+ self.store.persist_result_record(
361
+ result_record=self._staged_value, holder=self._holder
362
+ )
354
363
  else:
355
- self.store.write(key=self.key, obj=self._staged_value)
364
+ self.store.write(
365
+ key=self.key, obj=self._staged_value, holder=self._holder
366
+ )
356
367
 
357
368
  self.state = TransactionState.COMMITTED
358
369
  if (
@@ -361,7 +372,7 @@ class Transaction(BaseTransaction):
361
372
  and self.isolation_level == IsolationLevel.SERIALIZABLE
362
373
  ):
363
374
  self.logger.debug(f"Releasing lock for transaction {self.key!r}")
364
- self.store.release_lock(self.key)
375
+ self.store.release_lock(self.key, holder=self._holder)
365
376
  return True
366
377
  except SerializationError as exc:
367
378
  if self.logger:
@@ -436,7 +447,7 @@ class Transaction(BaseTransaction):
436
447
  and self.isolation_level == IsolationLevel.SERIALIZABLE
437
448
  ):
438
449
  self.logger.debug(f"Releasing lock for transaction {self.key!r}")
439
- self.store.release_lock(self.key)
450
+ self.store.release_lock(self.key, holder=self._holder)
440
451
 
441
452
 
442
453
  class AsyncTransaction(BaseTransaction):
@@ -451,7 +462,7 @@ class AsyncTransaction(BaseTransaction):
451
462
  and self.isolation_level == IsolationLevel.SERIALIZABLE
452
463
  ):
453
464
  self.logger.debug(f"Acquiring lock for transaction {self.key!r}")
454
- await self.store.aacquire_lock(self.key)
465
+ await self.store.aacquire_lock(self.key, holder=self._holder)
455
466
  if (
456
467
  not self.overwrite
457
468
  and self.store
@@ -462,7 +473,7 @@ class AsyncTransaction(BaseTransaction):
462
473
 
463
474
  async def read(self) -> ResultRecord[Any] | None:
464
475
  if self.store and self.key:
465
- return await self.store.aread(key=self.key)
476
+ return await self.store.aread(key=self.key, holder=self._holder)
466
477
  return None
467
478
 
468
479
  async def reset(self) -> None:
@@ -488,7 +499,7 @@ class AsyncTransaction(BaseTransaction):
488
499
  and self.isolation_level == IsolationLevel.SERIALIZABLE
489
500
  ):
490
501
  self.logger.debug(f"Releasing lock for transaction {self.key!r}")
491
- self.store.release_lock(self.key)
502
+ self.store.release_lock(self.key, holder=self._holder)
492
503
 
493
504
  return False
494
505
 
@@ -505,10 +516,12 @@ class AsyncTransaction(BaseTransaction):
505
516
  if self.store and self.key and self.write_on_commit:
506
517
  if isinstance(self._staged_value, ResultRecord):
507
518
  await self.store.apersist_result_record(
508
- result_record=self._staged_value
519
+ result_record=self._staged_value, holder=self._holder
509
520
  )
510
521
  else:
511
- await self.store.awrite(key=self.key, obj=self._staged_value)
522
+ await self.store.awrite(
523
+ key=self.key, obj=self._staged_value, holder=self._holder
524
+ )
512
525
 
513
526
  self.state = TransactionState.COMMITTED
514
527
  if (
@@ -517,7 +530,7 @@ class AsyncTransaction(BaseTransaction):
517
530
  and self.isolation_level == IsolationLevel.SERIALIZABLE
518
531
  ):
519
532
  self.logger.debug(f"Releasing lock for transaction {self.key!r}")
520
- self.store.release_lock(self.key)
533
+ self.store.release_lock(self.key, holder=self._holder)
521
534
  return True
522
535
  except SerializationError as exc:
523
536
  if self.logger:
@@ -592,7 +605,7 @@ class AsyncTransaction(BaseTransaction):
592
605
  and self.isolation_level == IsolationLevel.SERIALIZABLE
593
606
  ):
594
607
  self.logger.debug(f"Releasing lock for transaction {self.key!r}")
595
- self.store.release_lock(self.key)
608
+ self.store.release_lock(self.key, holder=self._holder)
596
609
 
597
610
  async def __aenter__(self) -> Self:
598
611
  self.prepare_transaction()
@@ -607,9 +607,7 @@ def generate_default_dockerfile(context: Optional[Path] = None):
607
607
 
608
608
  if (context / "requirements.txt").exists():
609
609
  lines.append(f"COPY requirements.txt /opt/prefect/{dir_name}/requirements.txt")
610
- lines.append(
611
- f"RUN python -m pip install -r /opt/prefect/{dir_name}/requirements.txt"
612
- )
610
+ lines.append(f"RUN uv pip install -r /opt/prefect/{dir_name}/requirements.txt")
613
611
 
614
612
  lines.append(f"COPY . /opt/prefect/{dir_name}/")
615
613
  lines.append(f"WORKDIR /opt/prefect/{dir_name}/")
@@ -11,7 +11,7 @@ Replace `my-work-pool` with the name of the work pool you want the worker
11
11
  to poll for flow runs.
12
12
 
13
13
  For more information about work pools and workers,
14
- checkout out the [Prefect docs](/concepts/work-pools/).
14
+ checkout out the [Prefect docs](https://docs.prefect.io/v3/concepts/work-pools/).
15
15
  """
16
16
 
17
17
  from __future__ import annotations
@@ -1,5 +0,0 @@
1
- # Generated by versioningit
2
- __version__ = "3.4.11.dev5"
3
- __build_date__ = "2025-07-30 08:09:57.333018+00:00"
4
- __git_commit__ = "b6f64e41da1f5bd15c47308722b1e674b929efdd"
5
- __dirty__ = False