prefect-client 3.1.14__tar.gz → 3.1.15__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 (289) hide show
  1. {prefect-client-3.1.14/src/prefect_client.egg-info → prefect-client-3.1.15}/PKG-INFO +1 -1
  2. {prefect-client-3.1.14 → prefect-client-3.1.15}/requirements.txt +1 -1
  3. prefect-client-3.1.15/src/prefect/__main__.py +4 -0
  4. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_experimental/lineage.py +40 -22
  5. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/concurrency/services.py +1 -1
  6. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_version.py +3 -3
  7. prefect-client-3.1.15/src/prefect/artifacts.py +746 -0
  8. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/blocks/core.py +1 -1
  9. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/blocks/notifications.py +5 -0
  10. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/schemas/actions.py +11 -1
  11. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/schemas/schedules.py +4 -4
  12. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/deployments/base.py +13 -16
  13. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/deployments/runner.py +117 -4
  14. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/clients.py +39 -0
  15. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/flow_engine.py +119 -0
  16. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/flows.py +252 -9
  17. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/runtime/task_run.py +37 -9
  18. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/tasks.py +8 -6
  19. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/render_swagger.py +1 -1
  20. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/templating.py +7 -0
  21. {prefect-client-3.1.14 → prefect-client-3.1.15/src/prefect_client.egg-info}/PKG-INFO +1 -1
  22. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect_client.egg-info/SOURCES.txt +1 -0
  23. prefect-client-3.1.14/src/prefect/artifacts.py +0 -443
  24. {prefect-client-3.1.14 → prefect-client-3.1.15}/LICENSE +0 -0
  25. {prefect-client-3.1.14 → prefect-client-3.1.15}/MANIFEST.in +0 -0
  26. {prefect-client-3.1.14 → prefect-client-3.1.15}/README.md +0 -0
  27. {prefect-client-3.1.14 → prefect-client-3.1.15}/requirements-client.txt +0 -0
  28. {prefect-client-3.1.14 → prefect-client-3.1.15}/requirements-dev.txt +0 -0
  29. {prefect-client-3.1.14 → prefect-client-3.1.15}/setup.cfg +0 -0
  30. {prefect-client-3.1.14 → prefect-client-3.1.15}/setup.py +0 -0
  31. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/.prefectignore +0 -0
  32. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/__init__.py +0 -0
  33. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_experimental/__init__.py +0 -0
  34. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_experimental/sla/__init__.py +0 -0
  35. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_experimental/sla/client.py +0 -0
  36. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_experimental/sla/objects.py +0 -0
  37. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/__init__.py +0 -0
  38. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/_logging.py +0 -0
  39. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/compatibility/__init__.py +0 -0
  40. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/compatibility/async_dispatch.py +0 -0
  41. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/compatibility/deprecated.py +0 -0
  42. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/compatibility/migration.py +0 -0
  43. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/concurrency/__init__.py +0 -0
  44. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/concurrency/api.py +0 -0
  45. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/concurrency/calls.py +0 -0
  46. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/concurrency/cancellation.py +0 -0
  47. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/concurrency/event_loop.py +0 -0
  48. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/concurrency/inspection.py +0 -0
  49. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/concurrency/primitives.py +0 -0
  50. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/concurrency/threads.py +0 -0
  51. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/concurrency/waiters.py +0 -0
  52. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/integrations.py +0 -0
  53. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/pydantic/__init__.py +0 -0
  54. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/pydantic/annotations/__init__.py +0 -0
  55. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/pydantic/annotations/pendulum.py +0 -0
  56. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/pydantic/schemas.py +0 -0
  57. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/pydantic/v1_schema.py +0 -0
  58. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/pydantic/v2_schema.py +0 -0
  59. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/pydantic/v2_validated_func.py +0 -0
  60. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/pytz.py +0 -0
  61. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/retries.py +0 -0
  62. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/schemas/__init__.py +0 -0
  63. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/schemas/bases.py +0 -0
  64. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/schemas/fields.py +0 -0
  65. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/schemas/serializers.py +0 -0
  66. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/_internal/schemas/validators.py +0 -0
  67. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/agent.py +0 -0
  68. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/automations.py +0 -0
  69. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/blocks/__init__.py +0 -0
  70. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/blocks/abstract.py +0 -0
  71. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/blocks/fields.py +0 -0
  72. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/blocks/redis.py +0 -0
  73. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/blocks/system.py +0 -0
  74. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/blocks/webhook.py +0 -0
  75. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/cache_policies.py +0 -0
  76. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/__init__.py +0 -0
  77. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/base.py +0 -0
  78. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/cloud.py +0 -0
  79. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/collections.py +0 -0
  80. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/constants.py +0 -0
  81. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/__init__.py +0 -0
  82. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_artifacts/__init__.py +0 -0
  83. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_artifacts/client.py +0 -0
  84. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_automations/__init__.py +0 -0
  85. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_automations/client.py +0 -0
  86. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_blocks_documents/__init__.py +0 -0
  87. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_blocks_documents/client.py +0 -0
  88. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_blocks_schemas/__init__.py +0 -0
  89. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_blocks_schemas/client.py +0 -0
  90. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_blocks_types/__init__.py +0 -0
  91. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_blocks_types/client.py +0 -0
  92. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_concurrency_limits/__init__.py +0 -0
  93. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_concurrency_limits/client.py +0 -0
  94. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_deployments/__init__.py +0 -0
  95. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_deployments/client.py +0 -0
  96. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_flow_runs/__init__.py +0 -0
  97. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_flow_runs/client.py +0 -0
  98. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_flows/__init__.py +0 -0
  99. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_flows/client.py +0 -0
  100. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_logs/__init__.py +0 -0
  101. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_logs/client.py +0 -0
  102. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_variables/__init__.py +0 -0
  103. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/_variables/client.py +0 -0
  104. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/base.py +0 -0
  105. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/orchestration/routes.py +0 -0
  106. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/schemas/__init__.py +0 -0
  107. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/schemas/filters.py +0 -0
  108. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/schemas/objects.py +0 -0
  109. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/schemas/responses.py +0 -0
  110. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/schemas/sorting.py +0 -0
  111. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/subscriptions.py +0 -0
  112. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/types/__init__.py +0 -0
  113. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/types/flexible_schedule_list.py +0 -0
  114. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/client/utilities.py +0 -0
  115. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/__init__.py +0 -0
  116. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/_asyncio.py +0 -0
  117. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/_events.py +0 -0
  118. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/asyncio.py +0 -0
  119. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/context.py +0 -0
  120. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/services.py +0 -0
  121. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/sync.py +0 -0
  122. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/v1/__init__.py +0 -0
  123. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/v1/_asyncio.py +0 -0
  124. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/v1/_events.py +0 -0
  125. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/v1/asyncio.py +0 -0
  126. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/v1/context.py +0 -0
  127. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/v1/services.py +0 -0
  128. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/concurrency/v1/sync.py +0 -0
  129. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/context.py +0 -0
  130. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/deployments/__init__.py +0 -0
  131. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/deployments/deployments.py +0 -0
  132. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/deployments/flow_runs.py +0 -0
  133. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/deployments/schedules.py +0 -0
  134. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/deployments/steps/__init__.py +0 -0
  135. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/deployments/steps/core.py +0 -0
  136. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/deployments/steps/pull.py +0 -0
  137. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/deployments/steps/utility.py +0 -0
  138. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/docker/__init__.py +0 -0
  139. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/docker/docker_image.py +0 -0
  140. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/engine.py +0 -0
  141. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/__init__.py +0 -0
  142. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/actions.py +0 -0
  143. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/cli/__init__.py +0 -0
  144. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/cli/automations.py +0 -0
  145. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/filters.py +0 -0
  146. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/related.py +0 -0
  147. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/schemas/__init__.py +0 -0
  148. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/schemas/automations.py +0 -0
  149. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/schemas/deployment_triggers.py +0 -0
  150. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/schemas/events.py +0 -0
  151. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/schemas/labelling.py +0 -0
  152. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/utilities.py +0 -0
  153. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/events/worker.py +0 -0
  154. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/exceptions.py +0 -0
  155. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/filesystems.py +0 -0
  156. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/flow_runs.py +0 -0
  157. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/futures.py +0 -0
  158. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/infrastructure/__init__.py +0 -0
  159. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/infrastructure/base.py +0 -0
  160. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/infrastructure/provisioners/__init__.py +0 -0
  161. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/infrastructure/provisioners/cloud_run.py +0 -0
  162. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/infrastructure/provisioners/coiled.py +0 -0
  163. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/infrastructure/provisioners/container_instance.py +0 -0
  164. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/infrastructure/provisioners/ecs.py +0 -0
  165. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/infrastructure/provisioners/modal.py +0 -0
  166. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/input/__init__.py +0 -0
  167. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/input/actions.py +0 -0
  168. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/input/run_input.py +0 -0
  169. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/locking/__init__.py +0 -0
  170. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/locking/filesystem.py +0 -0
  171. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/locking/memory.py +0 -0
  172. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/locking/protocol.py +0 -0
  173. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/logging/__init__.py +0 -0
  174. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/logging/configuration.py +0 -0
  175. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/logging/filters.py +0 -0
  176. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/logging/formatters.py +0 -0
  177. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/logging/handlers.py +0 -0
  178. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/logging/highlighters.py +0 -0
  179. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/logging/loggers.py +0 -0
  180. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/logging/logging.yml +0 -0
  181. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/main.py +0 -0
  182. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/plugins.py +0 -0
  183. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/py.typed +0 -0
  184. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/results.py +0 -0
  185. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/runner/__init__.py +0 -0
  186. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/runner/runner.py +0 -0
  187. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/runner/server.py +0 -0
  188. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/runner/storage.py +0 -0
  189. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/runner/submit.py +0 -0
  190. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/runner/utils.py +0 -0
  191. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/runtime/__init__.py +0 -0
  192. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/runtime/deployment.py +0 -0
  193. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/runtime/flow_run.py +0 -0
  194. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/serializers.py +0 -0
  195. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/server/api/collections_data/views/aggregate-worker-metadata.json +0 -0
  196. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/server/api/static/prefect-logo-mark-gradient.png +0 -0
  197. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/__init__.py +0 -0
  198. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/base.py +0 -0
  199. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/constants.py +0 -0
  200. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/context.py +0 -0
  201. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/legacy.py +0 -0
  202. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/__init__.py +0 -0
  203. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/api.py +0 -0
  204. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/cli.py +0 -0
  205. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/client.py +0 -0
  206. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/cloud.py +0 -0
  207. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/deployments.py +0 -0
  208. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/experiments.py +0 -0
  209. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/flows.py +0 -0
  210. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/internal.py +0 -0
  211. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/logging.py +0 -0
  212. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/results.py +0 -0
  213. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/root.py +0 -0
  214. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/runner.py +0 -0
  215. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/server/__init__.py +0 -0
  216. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/server/api.py +0 -0
  217. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/server/database.py +0 -0
  218. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/server/deployments.py +0 -0
  219. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/server/ephemeral.py +0 -0
  220. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/server/events.py +0 -0
  221. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/server/flow_run_graph.py +0 -0
  222. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/server/root.py +0 -0
  223. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/server/services.py +0 -0
  224. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/server/tasks.py +0 -0
  225. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/server/ui.py +0 -0
  226. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/tasks.py +0 -0
  227. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/testing.py +0 -0
  228. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/models/worker.py +0 -0
  229. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/profiles.py +0 -0
  230. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/profiles.toml +0 -0
  231. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/settings/sources.py +0 -0
  232. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/states.py +0 -0
  233. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/task_engine.py +0 -0
  234. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/task_runners.py +0 -0
  235. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/task_runs.py +0 -0
  236. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/task_worker.py +0 -0
  237. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/telemetry/__init__.py +0 -0
  238. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/telemetry/bootstrap.py +0 -0
  239. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/telemetry/instrumentation.py +0 -0
  240. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/telemetry/logging.py +0 -0
  241. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/telemetry/processors.py +0 -0
  242. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/telemetry/run_telemetry.py +0 -0
  243. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/telemetry/services.py +0 -0
  244. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/transactions.py +0 -0
  245. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/types/__init__.py +0 -0
  246. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/types/_datetime.py +0 -0
  247. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/types/entrypoint.py +0 -0
  248. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/__init__.py +0 -0
  249. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/_deprecated.py +0 -0
  250. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/_engine.py +0 -0
  251. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/_git.py +0 -0
  252. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/annotations.py +0 -0
  253. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/asyncutils.py +0 -0
  254. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/callables.py +0 -0
  255. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/collections.py +0 -0
  256. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/compat.py +0 -0
  257. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/context.py +0 -0
  258. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/dispatch.py +0 -0
  259. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/dockerutils.py +0 -0
  260. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/engine.py +0 -0
  261. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/filesystem.py +0 -0
  262. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/generics.py +0 -0
  263. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/hashing.py +0 -0
  264. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/importtools.py +0 -0
  265. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/math.py +0 -0
  266. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/names.py +0 -0
  267. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/processutils.py +0 -0
  268. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/pydantic.py +0 -0
  269. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/schema_tools/__init__.py +0 -0
  270. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/schema_tools/hydration.py +0 -0
  271. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/schema_tools/validation.py +0 -0
  272. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/services.py +0 -0
  273. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/slugify.py +0 -0
  274. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/text.py +0 -0
  275. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/timeout.py +0 -0
  276. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/urls.py +0 -0
  277. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/utilities/visualization.py +0 -0
  278. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/variables.py +0 -0
  279. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/workers/__init__.py +0 -0
  280. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/workers/base.py +0 -0
  281. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/workers/block.py +0 -0
  282. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/workers/cloud.py +0 -0
  283. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/workers/process.py +0 -0
  284. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/workers/server.py +0 -0
  285. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect/workers/utilities.py +0 -0
  286. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect_client.egg-info/dependency_links.txt +0 -0
  287. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect_client.egg-info/requires.txt +0 -0
  288. {prefect-client-3.1.14 → prefect-client-3.1.15}/src/prefect_client.egg-info/top_level.txt +0 -0
  289. {prefect-client-3.1.14 → prefect-client-3.1.15}/versioneer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: prefect-client
3
- Version: 3.1.14
3
+ Version: 3.1.15
4
4
  Summary: Workflow orchestration and management.
5
5
  Home-page: https://www.prefect.io
6
6
  Author: Prefect Technologies, Inc.
@@ -15,4 +15,4 @@ humanize >= 4.9.0, < 5.0.0
15
15
  pytz >= 2021.1, < 2025
16
16
  readchar >= 4.0.0, < 5.0.0
17
17
  sqlalchemy[asyncio] >= 2.0, < 3.0.0
18
- typer >= 0.12.0, != 0.12.2, < 0.14.0
18
+ typer >= 0.12.0, != 0.12.2, < 0.16.0
@@ -0,0 +1,4 @@
1
+ from prefect.cli import app
2
+
3
+ if __name__ == "__main__":
4
+ app()
@@ -1,15 +1,16 @@
1
1
  from typing import TYPE_CHECKING, Any, Dict, Literal, Optional, Sequence, Union
2
2
 
3
+ from typing_extensions import TypeAlias
4
+
3
5
  from prefect.events.related import related_resources_from_run_context
4
- from prefect.events.schemas.events import RelatedResource, Resource
6
+ from prefect.events.schemas.events import RelatedResource
5
7
  from prefect.events.utilities import emit_event
6
8
  from prefect.settings import get_current_settings
7
9
 
8
10
  if TYPE_CHECKING:
9
11
  from prefect.results import ResultStore
10
12
 
11
- UpstreamResources = Sequence[Union[RelatedResource, dict[str, str]]]
12
- DownstreamResources = Sequence[Union[Resource, dict[str, str]]]
13
+ LineageResources: TypeAlias = Sequence[Union[RelatedResource, dict[str, str]]]
13
14
 
14
15
  # Map block types to their URI schemes
15
16
  STORAGE_URI_SCHEMES = {
@@ -47,8 +48,8 @@ def get_result_resource_uri(
47
48
 
48
49
  async def emit_lineage_event(
49
50
  event_name: str,
50
- upstream_resources: Optional[UpstreamResources] = None,
51
- downstream_resources: Optional[DownstreamResources] = None,
51
+ upstream_resources: Optional[LineageResources] = None,
52
+ downstream_resources: Optional[LineageResources] = None,
52
53
  direction_of_run_from_event: Literal["upstream", "downstream"] = "downstream",
53
54
  ) -> None:
54
55
  """Emit lineage events showing relationships between resources.
@@ -73,7 +74,14 @@ async def emit_lineage_event(
73
74
  downstream_resources = list(downstream_resources) if downstream_resources else []
74
75
 
75
76
  async with get_client() as client:
76
- related_resources = await related_resources_from_run_context(client)
77
+ context_resources = await related_resources_from_run_context(client)
78
+
79
+ tag_resources = [
80
+ res for res in context_resources if res.get("prefect.resource.role") == "tag"
81
+ ]
82
+ context_resources = [
83
+ res for res in context_resources if res.get("prefect.resource.role") != "tag"
84
+ ]
77
85
 
78
86
  # NOTE: We handle adding run-related resources to the event here instead of in
79
87
  # the EventsWorker because not all run-related resources are upstream from
@@ -82,9 +90,9 @@ async def emit_lineage_event(
82
90
  # lineage-related events, tracks upstream resources only. For downstream
83
91
  # resources, we need to emit an event for each downstream resource.
84
92
  if direction_of_run_from_event == "downstream":
85
- downstream_resources.extend(related_resources)
93
+ downstream_resources.extend(context_resources)
86
94
  else:
87
- upstream_resources.extend(related_resources)
95
+ upstream_resources.extend(context_resources)
88
96
 
89
97
  # We want to consider all resources upstream and downstream of the event as
90
98
  # lineage-related, including flows, flow runs, etc., so we add the label to
@@ -101,7 +109,7 @@ async def emit_lineage_event(
101
109
  emit_kwargs: Dict[str, Any] = {
102
110
  "event": event_name,
103
111
  "resource": resource,
104
- "related": upstream_resources,
112
+ "related": upstream_resources + tag_resources,
105
113
  }
106
114
 
107
115
  emit_event(**emit_kwargs)
@@ -110,7 +118,7 @@ async def emit_lineage_event(
110
118
  async def emit_result_read_event(
111
119
  store: "ResultStore",
112
120
  result_key: str,
113
- downstream_resources: Optional[DownstreamResources] = None,
121
+ downstream_resources: Optional[LineageResources] = None,
114
122
  cached: bool = False,
115
123
  ) -> None:
116
124
  """
@@ -150,7 +158,7 @@ async def emit_result_read_event(
150
158
  async def emit_result_write_event(
151
159
  store: "ResultStore",
152
160
  result_key: str,
153
- upstream_resources: Optional[UpstreamResources] = None,
161
+ upstream_resources: Optional[LineageResources] = None,
154
162
  ) -> None:
155
163
  """
156
164
  Emit a lineage event showing a task or flow result was written.
@@ -181,8 +189,10 @@ async def emit_result_write_event(
181
189
 
182
190
 
183
191
  async def emit_external_resource_lineage(
184
- upstream_resources: Optional[UpstreamResources] = None,
185
- downstream_resources: Optional[DownstreamResources] = None,
192
+ event_name: str = "prefect.lineage.event",
193
+ upstream_resources: Optional[LineageResources] = None,
194
+ downstream_resources: Optional[LineageResources] = None,
195
+ context_resources: Optional[LineageResources] = None,
186
196
  ) -> None:
187
197
  """Emit lineage events connecting external resources to Prefect context resources.
188
198
 
@@ -206,11 +216,19 @@ async def emit_external_resource_lineage(
206
216
  downstream_resources = list(downstream_resources) if downstream_resources else []
207
217
 
208
218
  # Get the current Prefect context resources (flow runs, task runs, etc.)
209
- async with get_client() as client:
210
- context_resources = await related_resources_from_run_context(client)
219
+ if not context_resources:
220
+ async with get_client() as client:
221
+ context_resources = await related_resources_from_run_context(client)
222
+
223
+ tag_resources = [
224
+ res for res in context_resources if res.get("prefect.resource.role") == "tag"
225
+ ]
226
+ context_resources = [
227
+ res for res in context_resources if res.get("prefect.resource.role") != "tag"
228
+ ]
211
229
 
212
230
  # Add lineage group label to all resources
213
- for res in upstream_resources + downstream_resources:
231
+ for res in upstream_resources + downstream_resources + context_resources:
214
232
  if "prefect.resource.lineage-group" not in res:
215
233
  res["prefect.resource.lineage-group"] = "global"
216
234
 
@@ -218,26 +236,26 @@ async def emit_external_resource_lineage(
218
236
  if upstream_resources:
219
237
  for context_resource in context_resources:
220
238
  emit_kwargs: Dict[str, Any] = {
221
- "event": "prefect.resource.consumed",
239
+ "event": "prefect.lineage.upstream-interaction",
222
240
  "resource": context_resource,
223
- "related": upstream_resources,
241
+ "related": upstream_resources + tag_resources,
224
242
  }
225
243
  emit_event(**emit_kwargs)
226
244
 
227
245
  # For each downstream resource, emit an event showing it as downstream of context resources
228
246
  for downstream_resource in downstream_resources:
229
247
  emit_kwargs: Dict[str, Any] = {
230
- "event": "prefect.resource.produced",
248
+ "event": "prefect.lineage.downstream-interaction",
231
249
  "resource": downstream_resource,
232
- "related": context_resources,
250
+ "related": context_resources + tag_resources,
233
251
  }
234
252
  emit_event(**emit_kwargs)
235
253
 
236
254
  # For each downstream resource, emit an event showing it as downstream of upstream resources
237
255
  if upstream_resources:
238
256
  direct_emit_kwargs = {
239
- "event": "prefect.resource.direct-lineage",
257
+ "event": event_name,
240
258
  "resource": downstream_resource,
241
- "related": upstream_resources,
259
+ "related": upstream_resources + tag_resources,
242
260
  }
243
261
  emit_event(**direct_emit_kwargs)
@@ -65,7 +65,7 @@ class _QueueServiceBase(abc.ABC, Generic[T]):
65
65
  # failure to process items. This is particularly relevant for services
66
66
  # which use an httpx client. See related issue at
67
67
  # https://github.com/python/cpython/issues/86813
68
- threading._register_atexit(self._at_exit) # pyright: ignore[reportUnknownVariableType, reportAttributeAccessIssue]
68
+ threading._register_atexit(self._at_exit) # pyright: ignore[reportUnknownMemberType, reportAttributeAccessIssue]
69
69
 
70
70
  def _at_exit(self) -> None:
71
71
  self.drain(at_exit=True)
@@ -8,11 +8,11 @@ import json
8
8
 
9
9
  version_json = '''
10
10
  {
11
- "date": "2025-01-23T13:22:04-0800",
11
+ "date": "2025-01-30T11:31:29-0800",
12
12
  "dirty": true,
13
13
  "error": null,
14
- "full-revisionid": "5f1ebb57222bee1537b4d2c64b6dc9e3791ebafe",
15
- "version": "3.1.14"
14
+ "full-revisionid": "3ac3d54885a6157989efd79cbfc0d681b4bb7e0c",
15
+ "version": "3.1.15"
16
16
  }
17
17
  ''' # END VERSION_JSON
18
18