prefect-client 3.4.2.dev4__tar.gz → 3.4.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/PKG-INFO +1 -1
  2. prefect_client-3.4.3/src/prefect/_build_info.py +5 -0
  3. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/concurrency/calls.py +37 -1
  4. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/blocks/webhook.py +15 -7
  5. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/deployments/runner.py +3 -1
  6. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/flows.py +1 -1
  7. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/logging/configuration.py +4 -1
  8. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/logging/logging.yml +2 -1
  9. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/runner/runner.py +3 -10
  10. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/serializers.py +9 -0
  11. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/server/database.py +41 -0
  12. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/task_engine.py +12 -4
  13. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/callables.py +4 -0
  14. prefect_client-3.4.2.dev4/src/prefect/_build_info.py +0 -5
  15. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/.gitignore +0 -0
  16. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/LICENSE +0 -0
  17. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/README.md +0 -0
  18. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/pyproject.toml +0 -0
  19. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/.prefectignore +0 -0
  20. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/__init__.py +0 -0
  21. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/__main__.py +0 -0
  22. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_experimental/__init__.py +0 -0
  23. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_experimental/bundles/__init__.py +0 -0
  24. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_experimental/bundles/execute.py +0 -0
  25. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_experimental/lineage.py +0 -0
  26. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_experimental/sla/__init__.py +0 -0
  27. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_experimental/sla/client.py +0 -0
  28. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_experimental/sla/objects.py +0 -0
  29. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/__init__.py +0 -0
  30. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/_logging.py +0 -0
  31. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/compatibility/__init__.py +0 -0
  32. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/compatibility/async_dispatch.py +0 -0
  33. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/compatibility/blocks.py +0 -0
  34. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/compatibility/deprecated.py +0 -0
  35. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/compatibility/migration.py +0 -0
  36. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/concurrency/__init__.py +0 -0
  37. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/concurrency/api.py +0 -0
  38. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/concurrency/cancellation.py +0 -0
  39. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/concurrency/event_loop.py +0 -0
  40. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/concurrency/inspection.py +0 -0
  41. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/concurrency/primitives.py +0 -0
  42. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/concurrency/services.py +0 -0
  43. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/concurrency/threads.py +0 -0
  44. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/concurrency/waiters.py +0 -0
  45. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/integrations.py +0 -0
  46. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/pydantic/__init__.py +0 -0
  47. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/pydantic/schemas.py +0 -0
  48. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/pydantic/v1_schema.py +0 -0
  49. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/pydantic/v2_schema.py +0 -0
  50. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/pydantic/v2_validated_func.py +0 -0
  51. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/pytz.py +0 -0
  52. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/retries.py +0 -0
  53. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/schemas/__init__.py +0 -0
  54. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/schemas/bases.py +0 -0
  55. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/schemas/fields.py +0 -0
  56. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/schemas/serializers.py +0 -0
  57. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/schemas/validators.py +0 -0
  58. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_internal/uuid7.py +0 -0
  59. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_result_records.py +0 -0
  60. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_vendor/croniter/__init__.py +0 -0
  61. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_vendor/croniter/croniter.py +0 -0
  62. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_versioning.py +0 -0
  63. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/_waiters.py +0 -0
  64. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/agent.py +0 -0
  65. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/artifacts.py +0 -0
  66. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/automations.py +0 -0
  67. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/blocks/__init__.py +0 -0
  68. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/blocks/abstract.py +0 -0
  69. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/blocks/core.py +0 -0
  70. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/blocks/fields.py +0 -0
  71. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/blocks/notifications.py +0 -0
  72. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/blocks/redis.py +0 -0
  73. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/blocks/system.py +0 -0
  74. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/cache_policies.py +0 -0
  75. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/__init__.py +0 -0
  76. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/base.py +0 -0
  77. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/cloud.py +0 -0
  78. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/collections.py +0 -0
  79. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/constants.py +0 -0
  80. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/__init__.py +0 -0
  81. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_artifacts/__init__.py +0 -0
  82. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_artifacts/client.py +0 -0
  83. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_automations/__init__.py +0 -0
  84. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_automations/client.py +0 -0
  85. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_blocks_documents/__init__.py +0 -0
  86. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_blocks_documents/client.py +0 -0
  87. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_blocks_schemas/__init__.py +0 -0
  88. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_blocks_schemas/client.py +0 -0
  89. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_blocks_types/__init__.py +0 -0
  90. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_blocks_types/client.py +0 -0
  91. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_concurrency_limits/__init__.py +0 -0
  92. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_concurrency_limits/client.py +0 -0
  93. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_deployments/__init__.py +0 -0
  94. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_deployments/client.py +0 -0
  95. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_flow_runs/__init__.py +0 -0
  96. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_flow_runs/client.py +0 -0
  97. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_flows/__init__.py +0 -0
  98. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_flows/client.py +0 -0
  99. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_logs/__init__.py +0 -0
  100. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_logs/client.py +0 -0
  101. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_variables/__init__.py +0 -0
  102. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_variables/client.py +0 -0
  103. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_work_pools/__init__.py +0 -0
  104. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/_work_pools/client.py +0 -0
  105. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/base.py +0 -0
  106. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/orchestration/routes.py +0 -0
  107. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/schemas/__init__.py +0 -0
  108. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/schemas/actions.py +0 -0
  109. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/schemas/filters.py +0 -0
  110. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/schemas/objects.py +0 -0
  111. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/schemas/responses.py +0 -0
  112. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/schemas/schedules.py +0 -0
  113. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/schemas/sorting.py +0 -0
  114. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/subscriptions.py +0 -0
  115. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/types/__init__.py +0 -0
  116. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/types/flexible_schedule_list.py +0 -0
  117. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/client/utilities.py +0 -0
  118. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/__init__.py +0 -0
  119. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/_asyncio.py +0 -0
  120. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/_events.py +0 -0
  121. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/asyncio.py +0 -0
  122. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/context.py +0 -0
  123. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/services.py +0 -0
  124. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/sync.py +0 -0
  125. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/v1/__init__.py +0 -0
  126. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/v1/_asyncio.py +0 -0
  127. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/v1/_events.py +0 -0
  128. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/v1/asyncio.py +0 -0
  129. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/v1/context.py +0 -0
  130. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/v1/services.py +0 -0
  131. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/concurrency/v1/sync.py +0 -0
  132. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/context.py +0 -0
  133. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/deployments/__init__.py +0 -0
  134. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/deployments/base.py +0 -0
  135. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/deployments/deployments.py +0 -0
  136. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/deployments/flow_runs.py +0 -0
  137. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/deployments/schedules.py +0 -0
  138. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/deployments/steps/__init__.py +0 -0
  139. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/deployments/steps/core.py +0 -0
  140. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/deployments/steps/pull.py +0 -0
  141. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/deployments/steps/utility.py +0 -0
  142. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/docker/__init__.py +0 -0
  143. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/docker/docker_image.py +0 -0
  144. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/engine.py +0 -0
  145. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/__init__.py +0 -0
  146. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/actions.py +0 -0
  147. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/cli/__init__.py +0 -0
  148. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/cli/automations.py +0 -0
  149. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/clients.py +0 -0
  150. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/filters.py +0 -0
  151. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/related.py +0 -0
  152. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/schemas/__init__.py +0 -0
  153. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/schemas/automations.py +0 -0
  154. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/schemas/deployment_triggers.py +0 -0
  155. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/schemas/events.py +0 -0
  156. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/schemas/labelling.py +0 -0
  157. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/utilities.py +0 -0
  158. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/events/worker.py +0 -0
  159. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/exceptions.py +0 -0
  160. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/filesystems.py +0 -0
  161. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/flow_engine.py +0 -0
  162. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/flow_runs.py +0 -0
  163. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/futures.py +0 -0
  164. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/infrastructure/__init__.py +0 -0
  165. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/infrastructure/base.py +0 -0
  166. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/infrastructure/provisioners/__init__.py +0 -0
  167. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/infrastructure/provisioners/cloud_run.py +0 -0
  168. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/infrastructure/provisioners/coiled.py +0 -0
  169. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/infrastructure/provisioners/container_instance.py +0 -0
  170. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/infrastructure/provisioners/ecs.py +0 -0
  171. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/infrastructure/provisioners/modal.py +0 -0
  172. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/input/__init__.py +0 -0
  173. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/input/actions.py +0 -0
  174. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/input/run_input.py +0 -0
  175. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/locking/__init__.py +0 -0
  176. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/locking/filesystem.py +0 -0
  177. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/locking/memory.py +0 -0
  178. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/locking/protocol.py +0 -0
  179. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/logging/__init__.py +0 -0
  180. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/logging/filters.py +0 -0
  181. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/logging/formatters.py +0 -0
  182. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/logging/handlers.py +0 -0
  183. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/logging/highlighters.py +0 -0
  184. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/logging/loggers.py +0 -0
  185. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/main.py +0 -0
  186. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/plugins.py +0 -0
  187. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/py.typed +0 -0
  188. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/results.py +0 -0
  189. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/runner/__init__.py +0 -0
  190. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/runner/_observers.py +0 -0
  191. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/runner/server.py +0 -0
  192. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/runner/storage.py +0 -0
  193. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/runner/submit.py +0 -0
  194. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/runner/utils.py +0 -0
  195. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/runtime/__init__.py +0 -0
  196. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/runtime/deployment.py +0 -0
  197. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/runtime/flow_run.py +0 -0
  198. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/runtime/task_run.py +0 -0
  199. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/schedules.py +0 -0
  200. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/__init__.py +0 -0
  201. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/admin.py +0 -0
  202. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/artifacts.py +0 -0
  203. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/automations.py +0 -0
  204. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/block_capabilities.py +0 -0
  205. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/block_documents.py +0 -0
  206. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/block_schemas.py +0 -0
  207. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/block_types.py +0 -0
  208. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/clients.py +0 -0
  209. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/collections.py +0 -0
  210. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/collections_data/views/aggregate-worker-metadata.json +0 -0
  211. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/concurrency_limits.py +0 -0
  212. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/concurrency_limits_v2.py +0 -0
  213. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/csrf_token.py +0 -0
  214. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/dependencies.py +0 -0
  215. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/deployments.py +0 -0
  216. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/events.py +0 -0
  217. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/flow_run_states.py +0 -0
  218. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/flow_runs.py +0 -0
  219. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/flows.py +0 -0
  220. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/logs.py +0 -0
  221. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/middleware.py +0 -0
  222. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/root.py +0 -0
  223. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/run_history.py +0 -0
  224. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/saved_searches.py +0 -0
  225. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/server.py +0 -0
  226. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/static/prefect-logo-mark-gradient.png +0 -0
  227. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/task_run_states.py +0 -0
  228. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/task_runs.py +0 -0
  229. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/task_workers.py +0 -0
  230. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/templates.py +0 -0
  231. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/ui/__init__.py +0 -0
  232. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/ui/flow_runs.py +0 -0
  233. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/ui/flows.py +0 -0
  234. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/ui/schemas.py +0 -0
  235. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/ui/task_runs.py +0 -0
  236. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/validation.py +0 -0
  237. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/variables.py +0 -0
  238. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/work_queues.py +0 -0
  239. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/server/api/workers.py +0 -0
  240. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/__init__.py +0 -0
  241. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/base.py +0 -0
  242. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/constants.py +0 -0
  243. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/context.py +0 -0
  244. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/legacy.py +0 -0
  245. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/__init__.py +0 -0
  246. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/api.py +0 -0
  247. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/cli.py +0 -0
  248. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/client.py +0 -0
  249. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/cloud.py +0 -0
  250. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/deployments.py +0 -0
  251. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/experiments.py +0 -0
  252. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/flows.py +0 -0
  253. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/internal.py +0 -0
  254. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/logging.py +0 -0
  255. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/results.py +0 -0
  256. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/root.py +0 -0
  257. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/runner.py +0 -0
  258. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/server/__init__.py +0 -0
  259. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/server/api.py +0 -0
  260. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/server/deployments.py +0 -0
  261. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/server/ephemeral.py +0 -0
  262. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/server/events.py +0 -0
  263. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/server/flow_run_graph.py +0 -0
  264. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/server/root.py +0 -0
  265. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/server/services.py +0 -0
  266. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/server/tasks.py +0 -0
  267. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/server/ui.py +0 -0
  268. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/tasks.py +0 -0
  269. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/testing.py +0 -0
  270. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/models/worker.py +0 -0
  271. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/profiles.py +0 -0
  272. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/profiles.toml +0 -0
  273. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/settings/sources.py +0 -0
  274. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/states.py +0 -0
  275. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/task_runners.py +0 -0
  276. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/task_runs.py +0 -0
  277. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/task_worker.py +0 -0
  278. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/tasks.py +0 -0
  279. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/telemetry/__init__.py +0 -0
  280. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/telemetry/bootstrap.py +0 -0
  281. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/telemetry/instrumentation.py +0 -0
  282. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/telemetry/logging.py +0 -0
  283. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/telemetry/processors.py +0 -0
  284. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/telemetry/run_telemetry.py +0 -0
  285. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/telemetry/services.py +0 -0
  286. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/transactions.py +0 -0
  287. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/types/__init__.py +0 -0
  288. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/types/_datetime.py +0 -0
  289. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/types/entrypoint.py +0 -0
  290. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/types/names.py +0 -0
  291. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/__init__.py +0 -0
  292. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/_ast.py +0 -0
  293. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/_deprecated.py +0 -0
  294. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/_engine.py +0 -0
  295. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/_git.py +0 -0
  296. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/annotations.py +0 -0
  297. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/asyncutils.py +0 -0
  298. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/collections.py +0 -0
  299. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/compat.py +0 -0
  300. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/context.py +0 -0
  301. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/dispatch.py +0 -0
  302. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/dockerutils.py +0 -0
  303. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/engine.py +0 -0
  304. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/filesystem.py +0 -0
  305. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/generics.py +0 -0
  306. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/hashing.py +0 -0
  307. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/importtools.py +0 -0
  308. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/math.py +0 -0
  309. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/names.py +0 -0
  310. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/processutils.py +0 -0
  311. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/pydantic.py +0 -0
  312. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/render_swagger.py +0 -0
  313. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/schema_tools/__init__.py +0 -0
  314. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/schema_tools/hydration.py +0 -0
  315. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/schema_tools/validation.py +0 -0
  316. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/services.py +0 -0
  317. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/slugify.py +0 -0
  318. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/templating.py +0 -0
  319. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/text.py +0 -0
  320. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/timeout.py +0 -0
  321. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/urls.py +0 -0
  322. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/utilities/visualization.py +0 -0
  323. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/variables.py +0 -0
  324. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/workers/__init__.py +0 -0
  325. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/workers/base.py +0 -0
  326. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/workers/block.py +0 -0
  327. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/workers/cloud.py +0 -0
  328. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/workers/process.py +0 -0
  329. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/workers/server.py +0 -0
  330. {prefect_client-3.4.2.dev4 → prefect_client-3.4.3}/src/prefect/workers/utilities.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: prefect-client
3
- Version: 3.4.2.dev4
3
+ Version: 3.4.3
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.3"
3
+ __build_date__ = "2025-05-22 21:59:28.248830+00:00"
4
+ __git_commit__ = "1c2ba7a465a17e2f7b1e5693afdedbc420257748"
5
+ __dirty__ = False
@@ -222,7 +222,7 @@ class Future(concurrent.futures.Future[T]):
222
222
  self._cancel_scope = None
223
223
 
224
224
 
225
- @dataclasses.dataclass
225
+ @dataclasses.dataclass(eq=False)
226
226
  class Call(Generic[T]):
227
227
  """
228
228
  A deferred function call.
@@ -236,6 +236,42 @@ class Call(Generic[T]):
236
236
  timeout: Optional[float]
237
237
  runner: Optional["Portal"] = None
238
238
 
239
+ def __eq__(self, other: object) -> bool:
240
+ """this is to avoid attempts at invalid access of args/kwargs in <3.13 stemming from the
241
+ auto-generated __eq__ method on the dataclass.
242
+
243
+ this will no longer be required in 3.13+, see https://github.com/python/cpython/issues/128294
244
+ """
245
+ if self is other:
246
+ return True
247
+ if not isinstance(other, Call):
248
+ return NotImplemented
249
+
250
+ try:
251
+ # Attempt to access args/kwargs. If any are missing on self or other,
252
+ # an AttributeError will be raised by the access attempt on one of them.
253
+ s_args, s_kwargs = self.args, self.kwargs
254
+ o_args, o_kwargs = other.args, other.kwargs
255
+ except AttributeError:
256
+ # If args/kwargs are missing on self or other (and self is not other),
257
+ # they are considered not equal. This ensures that a Call with deleted
258
+ # args/kwargs compares as different from one that still has them
259
+ return False
260
+
261
+ # If all args/kwargs were accessible on both, proceed with full field comparison.
262
+ # Note: self.future == other.future will use Future's __eq__ (default is identity).
263
+ return (
264
+ (self.future == other.future)
265
+ and (self.fn == other.fn)
266
+ and (s_args == o_args)
267
+ and (s_kwargs == o_kwargs)
268
+ and (self.context == other.context)
269
+ and (self.timeout == other.timeout)
270
+ and (self.runner == other.runner)
271
+ )
272
+
273
+ __hash__ = None # type: ignore
274
+
239
275
  @classmethod
240
276
  def new(
241
277
  cls,
@@ -58,7 +58,7 @@ class Webhook(Block):
58
58
  else:
59
59
  self._client = AsyncClient(transport=_insecure_http_transport)
60
60
 
61
- async def call(self, payload: dict[str, Any] | None = None) -> Response:
61
+ async def call(self, payload: dict[str, Any] | str | None = None) -> Response:
62
62
  """
63
63
  Call the webhook.
64
64
 
@@ -69,9 +69,17 @@ class Webhook(Block):
69
69
  validate_restricted_url(self.url.get_secret_value())
70
70
 
71
71
  async with self._client:
72
- return await self._client.request(
73
- method=self.method,
74
- url=self.url.get_secret_value(),
75
- headers=self.headers.get_secret_value(),
76
- json=payload,
77
- )
72
+ if isinstance(payload, str):
73
+ return await self._client.request(
74
+ method=self.method,
75
+ url=self.url.get_secret_value(),
76
+ headers=self.headers.get_secret_value(),
77
+ content=payload,
78
+ )
79
+ else:
80
+ return await self._client.request(
81
+ method=self.method,
82
+ url=self.url.get_secret_value(),
83
+ headers=self.headers.get_secret_value(),
84
+ json=payload,
85
+ )
@@ -743,7 +743,9 @@ class RunnerDeployment(BaseModel):
743
743
  entry_path = (
744
744
  Path(flow_file).absolute().relative_to(Path.cwd().absolute())
745
745
  )
746
- deployment.entrypoint = f"{entry_path}:{flow.fn.__name__}"
746
+ deployment.entrypoint = (
747
+ f"{entry_path}:{getattr(flow.fn, '__qualname__', flow.fn.__name__)}"
748
+ )
747
749
 
748
750
  if entrypoint_type == EntrypointType.FILE_PATH and not deployment._path:
749
751
  deployment._path = "."
@@ -404,7 +404,7 @@ class Flow(Generic[P, R]):
404
404
  module_name = inspect.getfile(fn)
405
405
  module = module_name if module_name != "__main__" else module
406
406
 
407
- self._entrypoint = f"{module}:{fn.__name__}"
407
+ self._entrypoint = f"{module}:{getattr(fn, '__qualname__', fn.__name__)}"
408
408
 
409
409
  @property
410
410
  def ismethod(self) -> bool:
@@ -54,7 +54,10 @@ def load_logging_config(path: Path) -> dict[str, Any]:
54
54
  to_envvar("PREFECT_LOGGING_" + "_".join(key_tup)).upper()
55
55
  )
56
56
  if env_val:
57
- val = env_val
57
+ if isinstance(val, list):
58
+ val = env_val.split(",")
59
+ else:
60
+ val = env_val
58
61
 
59
62
  # reassign the updated value
60
63
  flat_config[key_tup] = val
@@ -2,7 +2,8 @@
2
2
  #
3
3
  # Any item in this file can be overridden with an environment variable:
4
4
  # `PREFECT_LOGGING_[PATH]_[TO]_[KEY]=VALUE`
5
- #
5
+ # List items can be overridden with a comma-separated list:
6
+ # `PREFECT_LOGGING_[PATH]_[TO]_[KEY]=item1,item2,item3`
6
7
  # Templated values can be used to insert values from the Prefect settings at runtime.
7
8
 
8
9
  version: 1
@@ -968,16 +968,9 @@ class Runner:
968
968
 
969
969
  pid = process_map_entry.get("pid") if process_map_entry else None
970
970
  if not pid:
971
- if flow_run.state:
972
- await self._run_on_cancellation_hooks(flow_run, flow_run.state)
973
- await self._mark_flow_run_as_cancelled(
974
- flow_run,
975
- state_updates={
976
- "message": (
977
- "Could not find process ID for flow run"
978
- " and cancellation cannot be guaranteed."
979
- )
980
- },
971
+ self._logger.debug(
972
+ "Received cancellation request for flow run %s but no process was found.",
973
+ flow_run.id,
981
974
  )
982
975
  return
983
976
 
@@ -12,6 +12,7 @@ bytes to an object respectively.
12
12
  """
13
13
 
14
14
  import base64
15
+ import io
15
16
  from typing import Any, ClassVar, Generic, Optional, Union, overload
16
17
 
17
18
  from pydantic import (
@@ -46,6 +47,14 @@ def prefect_json_object_encoder(obj: Any) -> Any:
46
47
  """
47
48
  if isinstance(obj, BaseException):
48
49
  return {"__exc_type__": to_qualified_name(obj.__class__), "message": str(obj)}
50
+ elif isinstance(obj, io.IOBase):
51
+ return {
52
+ "__class__": to_qualified_name(obj.__class__),
53
+ "data": (
54
+ f"<Prefect IOStream Placeholder: type={obj.__class__.__name__}, "
55
+ f"repr={repr(obj)} (original content not read)>"
56
+ ),
57
+ }
49
58
  else:
50
59
  return {
51
60
  "__class__": to_qualified_name(obj.__class__),
@@ -15,6 +15,42 @@ from typing_extensions import Literal, Self
15
15
  from prefect.settings.base import PrefectBaseSettings, build_settings_config
16
16
 
17
17
 
18
+ class SQLAlchemyTLSSettings(PrefectBaseSettings):
19
+ """
20
+ Settings for controlling SQLAlchemy mTLS context when
21
+ using a PostgreSQL database.
22
+ """
23
+
24
+ model_config: ClassVar[SettingsConfigDict] = build_settings_config(
25
+ ("server", "database", "sqlalchemy", "connect_args", "tls")
26
+ )
27
+
28
+ enabled: bool = Field(
29
+ default=False,
30
+ description="Controls whether connected to mTLS enabled PostgreSQL when using a PostgreSQL database with the Prefect backend.",
31
+ )
32
+
33
+ ca_file: Optional[str] = Field(
34
+ default=None,
35
+ description="This configuration settings option specifies the path to PostgreSQL client certificate authority file.",
36
+ )
37
+
38
+ cert_file: Optional[str] = Field(
39
+ default=None,
40
+ description="This configuration settings option specifies the path to PostgreSQL client certificate file.",
41
+ )
42
+
43
+ key_file: Optional[str] = Field(
44
+ default=None,
45
+ description="This configuration settings option specifies the path to PostgreSQL client key file.",
46
+ )
47
+
48
+ check_hostname: bool = Field(
49
+ default=True,
50
+ description="This configuration settings option specifies whether to verify PostgreSQL server hostname.",
51
+ )
52
+
53
+
18
54
  class SQLAlchemyConnectArgsSettings(PrefectBaseSettings):
19
55
  """
20
56
  Settings for controlling SQLAlchemy connection behavior; note that these settings only take effect when
@@ -44,6 +80,11 @@ class SQLAlchemyConnectArgsSettings(PrefectBaseSettings):
44
80
  ),
45
81
  )
46
82
 
83
+ tls: SQLAlchemyTLSSettings = Field(
84
+ default_factory=SQLAlchemyTLSSettings,
85
+ description="Settings for controlling SQLAlchemy mTLS behavior",
86
+ )
87
+
47
88
 
48
89
  class SQLAlchemySettings(PrefectBaseSettings):
49
90
  """
@@ -546,9 +546,13 @@ class SyncTaskRunEngine(BaseTaskRunEngine[P, R]):
546
546
  self.retries: int = self.retries + 1
547
547
  return True
548
548
  elif self.retries >= self.task.retries:
549
+ retry_message_suffix = (
550
+ "Retries are exhausted"
551
+ if self.task.retries > 0
552
+ else "No retries configured for this task."
553
+ )
549
554
  self.logger.error(
550
- "Task run failed with exception: %r - Retries are exhausted",
551
- exc,
555
+ f"Task run failed with exception: {exc!r} - {retry_message_suffix}",
552
556
  exc_info=True,
553
557
  )
554
558
  return False
@@ -1096,9 +1100,13 @@ class AsyncTaskRunEngine(BaseTaskRunEngine[P, R]):
1096
1100
  self.retries: int = self.retries + 1
1097
1101
  return True
1098
1102
  elif self.retries >= self.task.retries:
1103
+ retry_message_suffix = (
1104
+ "Retries are exhausted"
1105
+ if self.task.retries > 0
1106
+ else "No retries configured for this task."
1107
+ )
1099
1108
  self.logger.error(
1100
- "Task run failed with exception: %r - Retries are exhausted",
1101
- exc,
1109
+ f"Task run failed with exception: {exc!r} - {retry_message_suffix}",
1102
1110
  exc_info=True,
1103
1111
  )
1104
1112
  return False
@@ -424,6 +424,10 @@ def generate_parameter_schema(
424
424
  name, type_, field = process_params(
425
425
  param, position=position, docstrings=docstrings, aliases=aliases
426
426
  )
427
+
428
+ if name == "cls":
429
+ continue # Exclude 'cls' as it's implicitly passed to @classmethod and not a real flow parameter
430
+
427
431
  # Generate a Pydantic model at each step so we can check if this parameter
428
432
  # type supports schema generation
429
433
  try:
@@ -1,5 +0,0 @@
1
- # Generated by versioningit
2
- __version__ = "3.4.2.dev4"
3
- __build_date__ = "2025-05-15 08:08:41.435561+00:00"
4
- __git_commit__ = "95a0ccedd4626c1a737d41a2d4aac25072d606cd"
5
- __dirty__ = False