prefect-client 3.3.5.dev4__tar.gz → 3.3.6.dev2__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 (325) hide show
  1. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/PKG-INFO +2 -2
  2. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/pyproject.toml +1 -1
  3. prefect_client-3.3.6.dev2/src/prefect/_build_info.py +5 -0
  4. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/cache_policies.py +4 -4
  5. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/context.py +3 -1
  6. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/context.py +1 -3
  7. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/clients.py +1 -1
  8. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/futures.py +54 -21
  9. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runner/runner.py +1 -1
  10. prefect_client-3.3.6.dev2/src/prefect/utilities/_ast.py +117 -0
  11. prefect_client-3.3.5.dev4/src/prefect/_build_info.py +0 -5
  12. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/.gitignore +0 -0
  13. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/LICENSE +0 -0
  14. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/README.md +0 -0
  15. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/.prefectignore +0 -0
  16. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/__init__.py +0 -0
  17. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/__main__.py +0 -0
  18. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/__init__.py +0 -0
  19. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/bundles.py +0 -0
  20. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/lineage.py +0 -0
  21. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/sla/__init__.py +0 -0
  22. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/sla/client.py +0 -0
  23. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/sla/objects.py +0 -0
  24. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/__init__.py +0 -0
  25. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/_logging.py +0 -0
  26. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/compatibility/__init__.py +0 -0
  27. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/compatibility/async_dispatch.py +0 -0
  28. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/compatibility/deprecated.py +0 -0
  29. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/compatibility/migration.py +0 -0
  30. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/__init__.py +0 -0
  31. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/api.py +0 -0
  32. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/calls.py +0 -0
  33. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/cancellation.py +0 -0
  34. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/event_loop.py +0 -0
  35. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/inspection.py +0 -0
  36. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/primitives.py +0 -0
  37. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/services.py +0 -0
  38. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/threads.py +0 -0
  39. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/waiters.py +0 -0
  40. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/integrations.py +0 -0
  41. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/__init__.py +0 -0
  42. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/schemas.py +0 -0
  43. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/v1_schema.py +0 -0
  44. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/v2_schema.py +0 -0
  45. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/v2_validated_func.py +0 -0
  46. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pytz.py +0 -0
  47. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/retries.py +0 -0
  48. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/__init__.py +0 -0
  49. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/bases.py +0 -0
  50. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/fields.py +0 -0
  51. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/serializers.py +0 -0
  52. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/validators.py +0 -0
  53. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_result_records.py +0 -0
  54. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_vendor/croniter/__init__.py +0 -0
  55. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_vendor/croniter/croniter.py +0 -0
  56. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_waiters.py +0 -0
  57. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/agent.py +0 -0
  58. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/artifacts.py +0 -0
  59. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/automations.py +0 -0
  60. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/__init__.py +0 -0
  61. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/abstract.py +0 -0
  62. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/core.py +0 -0
  63. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/fields.py +0 -0
  64. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/notifications.py +0 -0
  65. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/redis.py +0 -0
  66. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/system.py +0 -0
  67. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/webhook.py +0 -0
  68. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/__init__.py +0 -0
  69. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/base.py +0 -0
  70. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/cloud.py +0 -0
  71. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/collections.py +0 -0
  72. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/constants.py +0 -0
  73. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/__init__.py +0 -0
  74. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_artifacts/__init__.py +0 -0
  75. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_artifacts/client.py +0 -0
  76. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_automations/__init__.py +0 -0
  77. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_automations/client.py +0 -0
  78. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_blocks_documents/__init__.py +0 -0
  79. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_blocks_documents/client.py +0 -0
  80. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_blocks_schemas/__init__.py +0 -0
  81. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_blocks_schemas/client.py +0 -0
  82. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_blocks_types/__init__.py +0 -0
  83. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_blocks_types/client.py +0 -0
  84. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_concurrency_limits/__init__.py +0 -0
  85. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_concurrency_limits/client.py +0 -0
  86. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_deployments/__init__.py +0 -0
  87. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_deployments/client.py +0 -0
  88. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_flow_runs/__init__.py +0 -0
  89. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_flow_runs/client.py +0 -0
  90. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_flows/__init__.py +0 -0
  91. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_flows/client.py +0 -0
  92. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_logs/__init__.py +0 -0
  93. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_logs/client.py +0 -0
  94. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_variables/__init__.py +0 -0
  95. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_variables/client.py +0 -0
  96. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_work_pools/__init__.py +0 -0
  97. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_work_pools/client.py +0 -0
  98. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/base.py +0 -0
  99. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/routes.py +0 -0
  100. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/__init__.py +0 -0
  101. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/actions.py +0 -0
  102. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/filters.py +0 -0
  103. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/objects.py +0 -0
  104. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/responses.py +0 -0
  105. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/schedules.py +0 -0
  106. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/sorting.py +0 -0
  107. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/subscriptions.py +0 -0
  108. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/types/__init__.py +0 -0
  109. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/types/flexible_schedule_list.py +0 -0
  110. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/utilities.py +0 -0
  111. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/__init__.py +0 -0
  112. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/_asyncio.py +0 -0
  113. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/_events.py +0 -0
  114. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/asyncio.py +0 -0
  115. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/services.py +0 -0
  116. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/sync.py +0 -0
  117. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/__init__.py +0 -0
  118. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/_asyncio.py +0 -0
  119. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/_events.py +0 -0
  120. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/asyncio.py +0 -0
  121. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/context.py +0 -0
  122. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/services.py +0 -0
  123. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/sync.py +0 -0
  124. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/__init__.py +0 -0
  125. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/base.py +0 -0
  126. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/deployments.py +0 -0
  127. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/flow_runs.py +0 -0
  128. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/runner.py +0 -0
  129. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/schedules.py +0 -0
  130. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/steps/__init__.py +0 -0
  131. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/steps/core.py +0 -0
  132. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/steps/pull.py +0 -0
  133. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/steps/utility.py +0 -0
  134. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/docker/__init__.py +0 -0
  135. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/docker/docker_image.py +0 -0
  136. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/engine.py +0 -0
  137. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/__init__.py +0 -0
  138. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/actions.py +0 -0
  139. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/cli/__init__.py +0 -0
  140. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/cli/automations.py +0 -0
  141. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/filters.py +0 -0
  142. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/related.py +0 -0
  143. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/schemas/__init__.py +0 -0
  144. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/schemas/automations.py +0 -0
  145. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/schemas/deployment_triggers.py +0 -0
  146. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/schemas/events.py +0 -0
  147. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/schemas/labelling.py +0 -0
  148. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/utilities.py +0 -0
  149. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/worker.py +0 -0
  150. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/exceptions.py +0 -0
  151. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/filesystems.py +0 -0
  152. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/flow_engine.py +0 -0
  153. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/flow_runs.py +0 -0
  154. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/flows.py +0 -0
  155. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/__init__.py +0 -0
  156. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/base.py +0 -0
  157. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/provisioners/__init__.py +0 -0
  158. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/provisioners/cloud_run.py +0 -0
  159. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/provisioners/coiled.py +0 -0
  160. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/provisioners/container_instance.py +0 -0
  161. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/provisioners/ecs.py +0 -0
  162. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/provisioners/modal.py +0 -0
  163. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/input/__init__.py +0 -0
  164. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/input/actions.py +0 -0
  165. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/input/run_input.py +0 -0
  166. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/locking/__init__.py +0 -0
  167. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/locking/filesystem.py +0 -0
  168. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/locking/memory.py +0 -0
  169. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/locking/protocol.py +0 -0
  170. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/__init__.py +0 -0
  171. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/configuration.py +0 -0
  172. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/filters.py +0 -0
  173. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/formatters.py +0 -0
  174. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/handlers.py +0 -0
  175. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/highlighters.py +0 -0
  176. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/loggers.py +0 -0
  177. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/logging.yml +0 -0
  178. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/main.py +0 -0
  179. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/plugins.py +0 -0
  180. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/py.typed +0 -0
  181. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/results.py +0 -0
  182. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runner/__init__.py +0 -0
  183. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runner/server.py +0 -0
  184. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runner/storage.py +0 -0
  185. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runner/submit.py +0 -0
  186. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runner/utils.py +0 -0
  187. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runtime/__init__.py +0 -0
  188. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runtime/deployment.py +0 -0
  189. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runtime/flow_run.py +0 -0
  190. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runtime/task_run.py +0 -0
  191. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/schedules.py +0 -0
  192. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/serializers.py +0 -0
  193. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/__init__.py +0 -0
  194. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/admin.py +0 -0
  195. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/artifacts.py +0 -0
  196. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/automations.py +0 -0
  197. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/block_capabilities.py +0 -0
  198. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/block_documents.py +0 -0
  199. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/block_schemas.py +0 -0
  200. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/block_types.py +0 -0
  201. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/clients.py +0 -0
  202. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/collections.py +0 -0
  203. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/collections_data/views/aggregate-worker-metadata.json +0 -0
  204. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/concurrency_limits.py +0 -0
  205. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/concurrency_limits_v2.py +0 -0
  206. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/csrf_token.py +0 -0
  207. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/dependencies.py +0 -0
  208. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/deployments.py +0 -0
  209. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/events.py +0 -0
  210. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/flow_run_notification_policies.py +0 -0
  211. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/flow_run_states.py +0 -0
  212. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/flow_runs.py +0 -0
  213. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/flows.py +0 -0
  214. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/logs.py +0 -0
  215. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/middleware.py +0 -0
  216. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/root.py +0 -0
  217. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/run_history.py +0 -0
  218. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/saved_searches.py +0 -0
  219. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/server.py +0 -0
  220. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/static/prefect-logo-mark-gradient.png +0 -0
  221. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/task_run_states.py +0 -0
  222. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/task_runs.py +0 -0
  223. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/task_workers.py +0 -0
  224. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/templates.py +0 -0
  225. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/ui/__init__.py +0 -0
  226. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/ui/flow_runs.py +0 -0
  227. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/ui/flows.py +0 -0
  228. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/ui/schemas.py +0 -0
  229. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/ui/task_runs.py +0 -0
  230. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/validation.py +0 -0
  231. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/variables.py +0 -0
  232. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/work_queues.py +0 -0
  233. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/workers.py +0 -0
  234. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/__init__.py +0 -0
  235. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/base.py +0 -0
  236. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/constants.py +0 -0
  237. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/context.py +0 -0
  238. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/legacy.py +0 -0
  239. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/__init__.py +0 -0
  240. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/api.py +0 -0
  241. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/cli.py +0 -0
  242. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/client.py +0 -0
  243. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/cloud.py +0 -0
  244. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/deployments.py +0 -0
  245. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/experiments.py +0 -0
  246. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/flows.py +0 -0
  247. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/internal.py +0 -0
  248. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/logging.py +0 -0
  249. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/results.py +0 -0
  250. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/root.py +0 -0
  251. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/runner.py +0 -0
  252. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/__init__.py +0 -0
  253. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/api.py +0 -0
  254. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/database.py +0 -0
  255. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/deployments.py +0 -0
  256. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/ephemeral.py +0 -0
  257. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/events.py +0 -0
  258. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/flow_run_graph.py +0 -0
  259. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/root.py +0 -0
  260. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/services.py +0 -0
  261. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/tasks.py +0 -0
  262. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/ui.py +0 -0
  263. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/tasks.py +0 -0
  264. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/testing.py +0 -0
  265. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/worker.py +0 -0
  266. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/profiles.py +0 -0
  267. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/profiles.toml +0 -0
  268. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/sources.py +0 -0
  269. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/states.py +0 -0
  270. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/task_engine.py +0 -0
  271. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/task_runners.py +0 -0
  272. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/task_runs.py +0 -0
  273. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/task_worker.py +0 -0
  274. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/tasks.py +0 -0
  275. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/__init__.py +0 -0
  276. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/bootstrap.py +0 -0
  277. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/instrumentation.py +0 -0
  278. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/logging.py +0 -0
  279. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/processors.py +0 -0
  280. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/run_telemetry.py +0 -0
  281. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/services.py +0 -0
  282. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/transactions.py +0 -0
  283. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/types/__init__.py +0 -0
  284. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/types/_datetime.py +0 -0
  285. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/types/entrypoint.py +0 -0
  286. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/__init__.py +0 -0
  287. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/_deprecated.py +0 -0
  288. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/_engine.py +0 -0
  289. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/_git.py +0 -0
  290. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/annotations.py +0 -0
  291. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/asyncutils.py +0 -0
  292. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/callables.py +0 -0
  293. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/collections.py +0 -0
  294. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/compat.py +0 -0
  295. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/context.py +0 -0
  296. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/dispatch.py +0 -0
  297. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/dockerutils.py +0 -0
  298. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/engine.py +0 -0
  299. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/filesystem.py +0 -0
  300. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/generics.py +0 -0
  301. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/hashing.py +0 -0
  302. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/importtools.py +0 -0
  303. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/math.py +0 -0
  304. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/names.py +0 -0
  305. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/processutils.py +0 -0
  306. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/pydantic.py +0 -0
  307. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/render_swagger.py +0 -0
  308. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/schema_tools/__init__.py +0 -0
  309. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/schema_tools/hydration.py +0 -0
  310. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/schema_tools/validation.py +0 -0
  311. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/services.py +0 -0
  312. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/slugify.py +0 -0
  313. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/templating.py +0 -0
  314. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/text.py +0 -0
  315. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/timeout.py +0 -0
  316. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/urls.py +0 -0
  317. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/visualization.py +0 -0
  318. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/variables.py +0 -0
  319. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/__init__.py +0 -0
  320. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/base.py +0 -0
  321. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/block.py +0 -0
  322. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/cloud.py +0 -0
  323. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/process.py +0 -0
  324. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/server.py +0 -0
  325. {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/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.3.5.dev4
3
+ Version: 3.3.6.dev2
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
@@ -47,7 +47,7 @@ Requires-Dist: prometheus-client>=0.20.0
47
47
  Requires-Dist: pydantic!=2.10.0,<3.0.0,>=2.9
48
48
  Requires-Dist: pydantic-core<3.0.0,>=2.12.0
49
49
  Requires-Dist: pydantic-extra-types<3.0.0,>=2.8.2
50
- Requires-Dist: pydantic-settings>2.2.1
50
+ Requires-Dist: pydantic-settings!=2.9.0,<3.0.0,>2.2.1
51
51
  Requires-Dist: python-dateutil<3.0.0,>=2.8.2
52
52
  Requires-Dist: python-slugify<9.0,>=5.0
53
53
  Requires-Dist: python-socks[asyncio]<3.0,>=2.5.3
@@ -51,7 +51,7 @@ dependencies = [
51
51
  "pydantic>=2.9,<3.0.0,!=2.10.0",
52
52
  "pydantic_core>=2.12.0,<3.0.0",
53
53
  "pydantic_extra_types>=2.8.2,<3.0.0",
54
- "pydantic_settings>2.2.1",
54
+ "pydantic_settings>2.2.1,<3.0.0,!=2.9.0",
55
55
  "python-dateutil>=2.8.2,<3.0.0",
56
56
  "python-slugify>=5.0,<9.0",
57
57
  "python-socks[asyncio]>=2.5.3,<3.0",
@@ -0,0 +1,5 @@
1
+ # Generated by versioningit
2
+ __version__ = "3.3.6.dev2"
3
+ __build_date__ = "2025-04-22 08:08:25.558469+00:00"
4
+ __git_commit__ = "562b964535b46f586b9b12808462956ed2f90c5a"
5
+ __dirty__ = False
@@ -33,9 +33,9 @@ def _register_stable_transforms() -> None:
33
33
  so that cache keys that utilize them are deterministic across invocations.
34
34
  """
35
35
  try:
36
- import pandas as pd
36
+ import pandas as pd # pyright: ignore
37
37
 
38
- STABLE_TRANSFORMS[pd.DataFrame] = lambda df: [
38
+ STABLE_TRANSFORMS[pd.DataFrame] = lambda df: [ # pyright: ignore
39
39
  df[col] for col in sorted(df.columns)
40
40
  ]
41
41
  except (ImportError, ModuleNotFoundError):
@@ -183,7 +183,7 @@ class CompoundCachePolicy(CachePolicy):
183
183
  Any keys that return `None` will be ignored.
184
184
  """
185
185
 
186
- policies: list[CachePolicy] = field(default_factory=list)
186
+ policies: list[CachePolicy] = field(default_factory=lambda: [])
187
187
 
188
188
  def __post_init__(self) -> None:
189
189
  # flatten any CompoundCachePolicies
@@ -349,7 +349,7 @@ class Inputs(CachePolicy):
349
349
  Policy that computes a cache key based on a hash of the runtime inputs provided to the task..
350
350
  """
351
351
 
352
- exclude: list[str] = field(default_factory=list)
352
+ exclude: list[str] = field(default_factory=lambda: [])
353
353
 
354
354
  def compute_key(
355
355
  self,
@@ -13,7 +13,9 @@ class ConcurrencyContext(ContextModel):
13
13
  # Track the slots that have been acquired but were not able to be released
14
14
  # due to cancellation or some other error. These slots are released when
15
15
  # the context manager exits.
16
- cleanup_slots: list[tuple[list[str], int, float]] = Field(default_factory=list)
16
+ cleanup_slots: list[tuple[list[str], int, float]] = Field(
17
+ default_factory=lambda: []
18
+ )
17
19
 
18
20
  def __exit__(self, *exc_info: Any) -> None:
19
21
  if self.cleanup_slots:
@@ -18,8 +18,6 @@ from typing import TYPE_CHECKING, Any, Callable, ClassVar, Optional, TypeVar, Un
18
18
  from pydantic import BaseModel, ConfigDict, Field, PrivateAttr
19
19
  from typing_extensions import Self
20
20
 
21
- import prefect.logging
22
- import prefect.logging.configuration
23
21
  import prefect.settings
24
22
  import prefect.types._datetime
25
23
  from prefect._internal.compatibility.migration import getattr_migration
@@ -128,7 +126,7 @@ class ContextModel(BaseModel):
128
126
  def __init__(self, **kwargs: Any) -> None: ...
129
127
 
130
128
  # The context variable for storing data must be defined by the child class
131
- __var__: ClassVar[ContextVar[Self]]
129
+ __var__: ClassVar[ContextVar[Any]]
132
130
  _token: Optional[Token[Self]] = PrivateAttr(None)
133
131
  model_config: ClassVar[ConfigDict] = ConfigDict(
134
132
  arbitrary_types_allowed=True,
@@ -400,7 +400,7 @@ class PrefectEventsClient(EventsClient):
400
400
  "Set PREFECT_DEBUG_MODE=1 to see the full error.",
401
401
  self._events_socket_url,
402
402
  str(e),
403
- exc_info=PREFECT_DEBUG_MODE,
403
+ exc_info=PREFECT_DEBUG_MODE.value(),
404
404
  )
405
405
  raise
406
406
 
@@ -612,19 +612,44 @@ def resolve_futures_to_states(
612
612
 
613
613
  Unsupported object types will be returned without modification.
614
614
  """
615
- futures: set[PrefectFuture[R]] = set()
616
615
 
617
- def _collect_futures(
618
- futures: set[PrefectFuture[R]], expr: Any | PrefectFuture[R], context: Any
619
- ) -> Any | PrefectFuture[R]:
620
- # Expressions inside quotes should not be traversed
621
- if isinstance(context.get("annotation"), quote):
622
- raise StopVisiting()
616
+ def _resolve_state(future: PrefectFuture[R]):
617
+ future.wait()
618
+ return future.state
623
619
 
624
- if isinstance(expr, PrefectFuture):
625
- futures.add(expr)
620
+ return _resolve_futures(
621
+ expr,
622
+ resolve_fn=_resolve_state,
623
+ )
626
624
 
627
- return expr
625
+
626
+ def resolve_futures_to_results(
627
+ expr: PrefectFuture[R] | Any,
628
+ ) -> Any:
629
+ """
630
+ Given a Python built-in collection, recursively find `PrefectFutures` and build a
631
+ new collection with the same structure with futures resolved to their final results.
632
+ Resolving futures to their final result may wait for execution to complete.
633
+
634
+ Unsupported object types will be returned without modification.
635
+ """
636
+
637
+ def _resolve_result(future: PrefectFuture[R]) -> Any:
638
+ future.wait()
639
+ if future.state.is_completed():
640
+ return future.result()
641
+ else:
642
+ raise Exception("At least one result did not complete successfully")
643
+
644
+ return _resolve_futures(expr, resolve_fn=_resolve_result)
645
+
646
+
647
+ def _resolve_futures(
648
+ expr: PrefectFuture[R] | Any,
649
+ resolve_fn: Callable[[PrefectFuture[R]], Any],
650
+ ) -> Any:
651
+ """Helper function to resolve PrefectFutures in a collection."""
652
+ futures: set[PrefectFuture[R]] = set()
628
653
 
629
654
  visit_collection(
630
655
  expr,
@@ -633,31 +658,39 @@ def resolve_futures_to_states(
633
658
  context={},
634
659
  )
635
660
 
636
- # if no futures were found, return the original expression
661
+ # If no futures were found, return the original expression
637
662
  if not futures:
638
663
  return expr
639
664
 
640
- # Get final states for each future
641
- states: list[State] = []
642
- for future in futures:
643
- future.wait()
644
- states.append(future.state)
645
-
646
- states_by_future = dict(zip(futures, states))
665
+ # Resolve each future using the provided resolve function
666
+ resolved_values = {future: resolve_fn(future) for future in futures}
647
667
 
648
- def replace_futures_with_states(expr: Any, context: Any) -> Any:
668
+ def replace_futures(expr: Any, context: Any) -> Any:
649
669
  # Expressions inside quotes should not be modified
650
670
  if isinstance(context.get("annotation"), quote):
651
671
  raise StopVisiting()
652
672
 
653
673
  if isinstance(expr, PrefectFuture):
654
- return states_by_future[expr]
674
+ return resolved_values[expr]
655
675
  else:
656
676
  return expr
657
677
 
658
678
  return visit_collection(
659
679
  expr,
660
- visit_fn=replace_futures_with_states,
680
+ visit_fn=replace_futures,
661
681
  return_data=True,
662
682
  context={},
663
683
  )
684
+
685
+
686
+ def _collect_futures(
687
+ futures: set[PrefectFuture[R]], expr: Any | PrefectFuture[R], context: Any
688
+ ) -> Any | PrefectFuture[R]:
689
+ # Expressions inside quotes should not be traversed
690
+ if isinstance(context.get("annotation"), quote):
691
+ raise StopVisiting()
692
+
693
+ if isinstance(expr, PrefectFuture):
694
+ futures.add(expr)
695
+
696
+ return expr
@@ -781,7 +781,7 @@ class Runner:
781
781
  if command is None:
782
782
  runner_command = [get_sys_executable(), "-m", "prefect.engine"]
783
783
  else:
784
- runner_command = shlex.split(command)
784
+ runner_command = shlex.split(command, posix=(os.name != "nt"))
785
785
 
786
786
  flow_run_logger = self._get_flow_run_logger(flow_run)
787
787
 
@@ -0,0 +1,117 @@
1
+ import ast
2
+ import math
3
+ from typing import TYPE_CHECKING, Literal
4
+
5
+ import anyio
6
+ from typing_extensions import TypeAlias
7
+
8
+ from prefect.logging.loggers import get_logger
9
+ from prefect.settings import get_current_settings
10
+ from prefect.utilities.asyncutils import LazySemaphore
11
+ from prefect.utilities.filesystem import get_open_file_limit
12
+
13
+ # Only allow half of the open file limit to be open at once to allow for other
14
+ # actors to open files.
15
+ OPEN_FILE_SEMAPHORE = LazySemaphore(lambda: math.floor(get_open_file_limit() * 0.5))
16
+
17
+ # this potentially could be a TypedDict, but you
18
+ # need some way to convince the type checker that
19
+ # Literal["flow_name", "task_name"] are being provided
20
+ DecoratedFnMetadata: TypeAlias = dict[str, str]
21
+
22
+
23
+ async def find_prefect_decorated_functions_in_file(
24
+ path: anyio.Path, decorator_module: str, decorator_name: Literal["flow", "task"]
25
+ ) -> list[DecoratedFnMetadata]:
26
+ logger = get_logger()
27
+ decorator_name_key = f"{decorator_name}_name"
28
+ decorated_functions: list[DecoratedFnMetadata] = []
29
+
30
+ async with OPEN_FILE_SEMAPHORE:
31
+ try:
32
+ async with await anyio.open_file(path) as f:
33
+ try:
34
+ tree = ast.parse(await f.read())
35
+ except SyntaxError:
36
+ if get_current_settings().debug_mode:
37
+ logger.debug(
38
+ f"Could not parse {path} as a Python file. Skipping."
39
+ )
40
+ return decorated_functions
41
+ except Exception as exc:
42
+ if get_current_settings().debug_mode:
43
+ logger.debug(f"Could not open {path}: {exc}. Skipping.")
44
+ return decorated_functions
45
+
46
+ for node in ast.walk(tree):
47
+ if isinstance(
48
+ node,
49
+ (
50
+ ast.FunctionDef,
51
+ ast.AsyncFunctionDef,
52
+ ),
53
+ ):
54
+ for decorator in node.decorator_list:
55
+ # handles @decorator_name
56
+ is_name_match = (
57
+ isinstance(decorator, ast.Name) and decorator.id == decorator_name
58
+ )
59
+ # handles @decorator_name()
60
+ is_func_name_match = (
61
+ isinstance(decorator, ast.Call)
62
+ and isinstance(decorator.func, ast.Name)
63
+ and decorator.func.id == decorator_name
64
+ )
65
+ # handles @decorator_module.decorator_name
66
+ is_module_attribute_match = (
67
+ isinstance(decorator, ast.Attribute)
68
+ and isinstance(decorator.value, ast.Name)
69
+ and decorator.value.id == decorator_module
70
+ and decorator.attr == decorator_name
71
+ )
72
+ # handles @decorator_module.decorator_name()
73
+ is_module_attribute_func_match = (
74
+ isinstance(decorator, ast.Call)
75
+ and isinstance(decorator.func, ast.Attribute)
76
+ and decorator.func.attr == decorator_name
77
+ and isinstance(decorator.func.value, ast.Name)
78
+ and decorator.func.value.id == decorator_module
79
+ )
80
+ if is_name_match or is_module_attribute_match:
81
+ decorated_functions.append(
82
+ {
83
+ decorator_name_key: node.name,
84
+ "function_name": node.name,
85
+ "filepath": str(path),
86
+ }
87
+ )
88
+ if is_func_name_match or is_module_attribute_func_match:
89
+ name_kwarg_node = None
90
+ if TYPE_CHECKING:
91
+ assert isinstance(decorator, ast.Call)
92
+ for kw in decorator.keywords:
93
+ if kw.arg == "name":
94
+ name_kwarg_node = kw
95
+ break
96
+ if name_kwarg_node is not None and isinstance(
97
+ name_kwarg_node.value, ast.Constant
98
+ ):
99
+ decorated_fn_name = name_kwarg_node.value.value
100
+ else:
101
+ decorated_fn_name = node.name
102
+ decorated_functions.append(
103
+ {
104
+ decorator_name_key: decorated_fn_name,
105
+ "function_name": node.name,
106
+ "filepath": str(path),
107
+ }
108
+ )
109
+ return decorated_functions
110
+
111
+
112
+ async def find_flow_functions_in_file(path: anyio.Path) -> list[DecoratedFnMetadata]:
113
+ return await find_prefect_decorated_functions_in_file(path, "prefect", "flow")
114
+
115
+
116
+ async def find_task_functions_in_file(path: anyio.Path) -> list[DecoratedFnMetadata]:
117
+ return await find_prefect_decorated_functions_in_file(path, "prefect", "task")
@@ -1,5 +0,0 @@
1
- # Generated by versioningit
2
- __version__ = "3.3.5.dev4"
3
- __build_date__ = "2025-04-17 08:08:34.376039+00:00"
4
- __git_commit__ = "d90d684c9e0773b41bf092ad7ef17e22dda08c77"
5
- __dirty__ = False