prefect-client 2.20.15__tar.gz → 2.20.16__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 (332) hide show
  1. {prefect_client-2.20.15/src/prefect_client.egg-info → prefect_client-2.20.16}/PKG-INFO +1 -1
  2. {prefect_client-2.20.15 → prefect_client-2.20.16}/requirements.txt +1 -1
  3. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/orchestration.py +34 -2
  4. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/schemas/objects.py +3 -0
  5. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/tasks.py +4 -0
  6. {prefect_client-2.20.15 → prefect_client-2.20.16/src/prefect_client.egg-info}/PKG-INFO +1 -1
  7. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_deployments.py +10 -5
  8. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_tasks.py +15 -0
  9. {prefect_client-2.20.15 → prefect_client-2.20.16}/LICENSE +0 -0
  10. {prefect_client-2.20.15 → prefect_client-2.20.16}/MANIFEST.in +0 -0
  11. {prefect_client-2.20.15 → prefect_client-2.20.16}/README.md +0 -0
  12. {prefect_client-2.20.15 → prefect_client-2.20.16}/requirements-client.txt +0 -0
  13. {prefect_client-2.20.15 → prefect_client-2.20.16}/requirements-dev.txt +0 -0
  14. {prefect_client-2.20.15 → prefect_client-2.20.16}/setup.cfg +0 -0
  15. {prefect_client-2.20.15 → prefect_client-2.20.16}/setup.py +0 -0
  16. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/.prefectignore +0 -0
  17. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/__init__.py +0 -0
  18. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/__init__.py +0 -0
  19. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/_logging.py +0 -0
  20. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/compatibility/__init__.py +0 -0
  21. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/compatibility/deprecated.py +0 -0
  22. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/compatibility/experimental.py +0 -0
  23. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/concurrency/__init__.py +0 -0
  24. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/concurrency/api.py +0 -0
  25. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/concurrency/calls.py +0 -0
  26. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/concurrency/cancellation.py +0 -0
  27. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/concurrency/event_loop.py +0 -0
  28. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/concurrency/inspection.py +0 -0
  29. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/concurrency/primitives.py +0 -0
  30. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/concurrency/services.py +0 -0
  31. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/concurrency/threads.py +0 -0
  32. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/concurrency/waiters.py +0 -0
  33. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/integrations.py +0 -0
  34. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/__init__.py +0 -0
  35. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/_base_model.py +0 -0
  36. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/_compat.py +0 -0
  37. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/_flags.py +0 -0
  38. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/_types.py +0 -0
  39. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/annotations/__init__.py +0 -0
  40. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/annotations/pendulum.py +0 -0
  41. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/schemas.py +0 -0
  42. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/__init__.py +0 -0
  43. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/config_dict.py +0 -0
  44. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/field_validator.py +0 -0
  45. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/model_construct.py +0 -0
  46. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/model_copy.py +0 -0
  47. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/model_dump.py +0 -0
  48. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/model_dump_json.py +0 -0
  49. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/model_fields.py +0 -0
  50. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/model_fields_set.py +0 -0
  51. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/model_json_schema.py +0 -0
  52. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/model_rebuild.py +0 -0
  53. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/model_validate.py +0 -0
  54. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/model_validate_json.py +0 -0
  55. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/model_validator.py +0 -0
  56. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/utilities/type_adapter.py +0 -0
  57. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/v1_schema.py +0 -0
  58. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/v2_schema.py +0 -0
  59. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pydantic/v2_validated_func.py +0 -0
  60. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/pytz.py +0 -0
  61. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/schemas/__init__.py +0 -0
  62. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/schemas/bases.py +0 -0
  63. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/schemas/fields.py +0 -0
  64. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/schemas/serializers.py +0 -0
  65. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_internal/schemas/validators.py +0 -0
  66. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/__init__.py +0 -0
  67. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/__init__.py +0 -0
  68. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/applications.py +0 -0
  69. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/background.py +0 -0
  70. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/concurrency.py +0 -0
  71. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/datastructures.py +0 -0
  72. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/dependencies/__init__.py +0 -0
  73. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/dependencies/models.py +0 -0
  74. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/dependencies/utils.py +0 -0
  75. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/encoders.py +0 -0
  76. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/exception_handlers.py +0 -0
  77. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/exceptions.py +0 -0
  78. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/logger.py +0 -0
  79. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/middleware/__init__.py +0 -0
  80. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/middleware/asyncexitstack.py +0 -0
  81. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/middleware/cors.py +0 -0
  82. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/middleware/gzip.py +0 -0
  83. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/middleware/httpsredirect.py +0 -0
  84. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/middleware/trustedhost.py +0 -0
  85. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/middleware/wsgi.py +0 -0
  86. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/openapi/__init__.py +0 -0
  87. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/openapi/constants.py +0 -0
  88. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/openapi/docs.py +0 -0
  89. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/openapi/models.py +0 -0
  90. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/openapi/utils.py +0 -0
  91. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/param_functions.py +0 -0
  92. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/params.py +0 -0
  93. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/py.typed +0 -0
  94. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/requests.py +0 -0
  95. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/responses.py +0 -0
  96. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/routing.py +0 -0
  97. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/security/__init__.py +0 -0
  98. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/security/api_key.py +0 -0
  99. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/security/base.py +0 -0
  100. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/security/http.py +0 -0
  101. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/security/oauth2.py +0 -0
  102. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/security/open_id_connect_url.py +0 -0
  103. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/security/utils.py +0 -0
  104. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/staticfiles.py +0 -0
  105. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/templating.py +0 -0
  106. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/testclient.py +0 -0
  107. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/types.py +0 -0
  108. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/utils.py +0 -0
  109. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/fastapi/websockets.py +0 -0
  110. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/__init__.py +0 -0
  111. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/_compat.py +0 -0
  112. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/_exception_handler.py +0 -0
  113. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/_utils.py +0 -0
  114. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/applications.py +0 -0
  115. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/authentication.py +0 -0
  116. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/background.py +0 -0
  117. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/concurrency.py +0 -0
  118. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/config.py +0 -0
  119. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/convertors.py +0 -0
  120. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/datastructures.py +0 -0
  121. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/endpoints.py +0 -0
  122. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/exceptions.py +0 -0
  123. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/formparsers.py +0 -0
  124. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/middleware/__init__.py +0 -0
  125. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/middleware/authentication.py +0 -0
  126. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/middleware/base.py +0 -0
  127. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/middleware/cors.py +0 -0
  128. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/middleware/errors.py +0 -0
  129. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/middleware/exceptions.py +0 -0
  130. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/middleware/gzip.py +0 -0
  131. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/middleware/httpsredirect.py +0 -0
  132. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/middleware/sessions.py +0 -0
  133. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/middleware/trustedhost.py +0 -0
  134. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/middleware/wsgi.py +0 -0
  135. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/py.typed +0 -0
  136. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/requests.py +0 -0
  137. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/responses.py +0 -0
  138. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/routing.py +0 -0
  139. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/schemas.py +0 -0
  140. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/staticfiles.py +0 -0
  141. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/status.py +0 -0
  142. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/templating.py +0 -0
  143. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/testclient.py +0 -0
  144. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/types.py +0 -0
  145. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_vendor/starlette/websockets.py +0 -0
  146. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/_version.py +0 -0
  147. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/agent.py +0 -0
  148. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/artifacts.py +0 -0
  149. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/automations.py +0 -0
  150. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/blocks/__init__.py +0 -0
  151. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/blocks/abstract.py +0 -0
  152. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/blocks/core.py +0 -0
  153. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/blocks/fields.py +0 -0
  154. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/blocks/kubernetes.py +0 -0
  155. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/blocks/notifications.py +0 -0
  156. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/blocks/system.py +0 -0
  157. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/blocks/webhook.py +0 -0
  158. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/__init__.py +0 -0
  159. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/base.py +0 -0
  160. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/cloud.py +0 -0
  161. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/collections.py +0 -0
  162. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/constants.py +0 -0
  163. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/schemas/__init__.py +0 -0
  164. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/schemas/actions.py +0 -0
  165. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/schemas/filters.py +0 -0
  166. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/schemas/responses.py +0 -0
  167. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/schemas/schedules.py +0 -0
  168. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/schemas/sorting.py +0 -0
  169. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/subscriptions.py +0 -0
  170. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/client/utilities.py +0 -0
  171. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/concurrency/__init__.py +0 -0
  172. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/concurrency/asyncio.py +0 -0
  173. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/concurrency/events.py +0 -0
  174. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/concurrency/services.py +0 -0
  175. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/concurrency/sync.py +0 -0
  176. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/context.py +0 -0
  177. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deployments/__init__.py +0 -0
  178. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deployments/base.py +0 -0
  179. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deployments/deployments.py +0 -0
  180. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deployments/runner.py +0 -0
  181. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deployments/schedules.py +0 -0
  182. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deployments/steps/__init__.py +0 -0
  183. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deployments/steps/core.py +0 -0
  184. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deployments/steps/pull.py +0 -0
  185. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deployments/steps/utility.py +0 -0
  186. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deprecated/__init__.py +0 -0
  187. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deprecated/data_documents.py +0 -0
  188. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deprecated/packaging/__init__.py +0 -0
  189. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deprecated/packaging/base.py +0 -0
  190. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deprecated/packaging/docker.py +0 -0
  191. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deprecated/packaging/file.py +0 -0
  192. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deprecated/packaging/orion.py +0 -0
  193. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/deprecated/packaging/serializers.py +0 -0
  194. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/engine.py +0 -0
  195. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/__init__.py +0 -0
  196. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/actions.py +0 -0
  197. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/cli/__init__.py +0 -0
  198. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/cli/automations.py +0 -0
  199. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/clients.py +0 -0
  200. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/filters.py +0 -0
  201. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/instrument.py +0 -0
  202. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/related.py +0 -0
  203. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/schemas/__init__.py +0 -0
  204. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/schemas/automations.py +0 -0
  205. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/schemas/deployment_triggers.py +0 -0
  206. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/schemas/events.py +0 -0
  207. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/schemas/labelling.py +0 -0
  208. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/utilities.py +0 -0
  209. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/events/worker.py +0 -0
  210. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/exceptions.py +0 -0
  211. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/filesystems.py +0 -0
  212. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/flow_runs.py +0 -0
  213. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/flows.py +0 -0
  214. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/futures.py +0 -0
  215. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/infrastructure/__init__.py +0 -0
  216. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/infrastructure/base.py +0 -0
  217. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/infrastructure/container.py +0 -0
  218. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/infrastructure/kubernetes.py +0 -0
  219. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/infrastructure/process.py +0 -0
  220. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/infrastructure/provisioners/__init__.py +0 -0
  221. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/infrastructure/provisioners/cloud_run.py +0 -0
  222. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/infrastructure/provisioners/container_instance.py +0 -0
  223. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/infrastructure/provisioners/ecs.py +0 -0
  224. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/infrastructure/provisioners/modal.py +0 -0
  225. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/input/__init__.py +0 -0
  226. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/input/actions.py +0 -0
  227. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/input/run_input.py +0 -0
  228. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/logging/__init__.py +0 -0
  229. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/logging/configuration.py +0 -0
  230. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/logging/filters.py +0 -0
  231. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/logging/formatters.py +0 -0
  232. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/logging/handlers.py +0 -0
  233. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/logging/highlighters.py +0 -0
  234. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/logging/loggers.py +0 -0
  235. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/logging/logging.yml +0 -0
  236. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/manifests.py +0 -0
  237. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/new_flow_engine.py +0 -0
  238. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/new_task_engine.py +0 -0
  239. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/plugins.py +0 -0
  240. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/profiles.toml +0 -0
  241. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/py.typed +0 -0
  242. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/pydantic/__init__.py +0 -0
  243. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/pydantic/main.py +0 -0
  244. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/results.py +0 -0
  245. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/runner/__init__.py +0 -0
  246. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/runner/runner.py +0 -0
  247. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/runner/server.py +0 -0
  248. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/runner/storage.py +0 -0
  249. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/runner/submit.py +0 -0
  250. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/runner/utils.py +0 -0
  251. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/runtime/__init__.py +0 -0
  252. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/runtime/deployment.py +0 -0
  253. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/runtime/flow_run.py +0 -0
  254. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/runtime/task_run.py +0 -0
  255. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/serializers.py +0 -0
  256. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/server/api/collections_data/views/aggregate-worker-metadata.json +0 -0
  257. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/server/api/static/prefect-logo-mark-gradient.png +0 -0
  258. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/settings.py +0 -0
  259. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/software/__init__.py +0 -0
  260. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/software/base.py +0 -0
  261. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/software/conda.py +0 -0
  262. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/software/pip.py +0 -0
  263. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/software/python.py +0 -0
  264. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/states.py +0 -0
  265. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/task_engine.py +0 -0
  266. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/task_runners.py +0 -0
  267. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/task_server.py +0 -0
  268. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/types/__init__.py +0 -0
  269. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/__init__.py +0 -0
  270. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/annotations.py +0 -0
  271. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/asyncutils.py +0 -0
  272. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/callables.py +0 -0
  273. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/collections.py +0 -0
  274. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/compat.py +0 -0
  275. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/context.py +0 -0
  276. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/dispatch.py +0 -0
  277. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/dockerutils.py +0 -0
  278. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/engine.py +0 -0
  279. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/filesystem.py +0 -0
  280. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/hashing.py +0 -0
  281. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/importtools.py +0 -0
  282. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/math.py +0 -0
  283. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/names.py +0 -0
  284. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/processutils.py +0 -0
  285. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/pydantic.py +0 -0
  286. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/render_swagger.py +0 -0
  287. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/schema_tools/__init__.py +0 -0
  288. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/schema_tools/hydration.py +0 -0
  289. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/schema_tools/validation.py +0 -0
  290. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/services.py +0 -0
  291. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/slugify.py +0 -0
  292. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/templating.py +0 -0
  293. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/text.py +0 -0
  294. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/timeout.py +0 -0
  295. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/urls.py +0 -0
  296. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/utilities/visualization.py +0 -0
  297. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/variables.py +0 -0
  298. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/workers/__init__.py +0 -0
  299. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/workers/base.py +0 -0
  300. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/workers/block.py +0 -0
  301. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/workers/process.py +0 -0
  302. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/workers/server.py +0 -0
  303. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect/workers/utilities.py +0 -0
  304. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect_client.egg-info/SOURCES.txt +0 -0
  305. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect_client.egg-info/dependency_links.txt +0 -0
  306. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect_client.egg-info/requires.txt +0 -0
  307. {prefect_client-2.20.15 → prefect_client-2.20.16}/src/prefect_client.egg-info/top_level.txt +0 -0
  308. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_artifacts.py +0 -0
  309. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_automations.py +0 -0
  310. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_background_tasks.py +0 -0
  311. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_context.py +0 -0
  312. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_engine.py +0 -0
  313. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_exceptions.py +0 -0
  314. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_filesystems.py +0 -0
  315. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_flow_runs.py +0 -0
  316. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_flows.py +0 -0
  317. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_flows_compat.py +0 -0
  318. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_futures.py +0 -0
  319. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_highlighters.py +0 -0
  320. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_import_interceptor.py +0 -0
  321. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_log_prints.py +0 -0
  322. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_logging.py +0 -0
  323. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_new_flow_engine.py +0 -0
  324. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_new_task_engine.py +0 -0
  325. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_plugins.py +0 -0
  326. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_serializers.py +0 -0
  327. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_settings.py +0 -0
  328. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_states.py +0 -0
  329. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_task_runners.py +0 -0
  330. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_task_server.py +0 -0
  331. {prefect_client-2.20.15 → prefect_client-2.20.16}/tests/test_variables.py +0 -0
  332. {prefect_client-2.20.15 → prefect_client-2.20.16}/versioneer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: prefect-client
3
- Version: 2.20.15
3
+ Version: 2.20.16
4
4
  Summary: Workflow orchestration and management.
5
5
  Home-page: https://www.prefect.io
6
6
  Author: Prefect Technologies, Inc.
@@ -16,4 +16,4 @@ kubernetes >= 24.2.0, < 32.0.0
16
16
  pytz >= 2021.1, < 2025
17
17
  readchar >= 4.0.0, < 5.0.0
18
18
  sqlalchemy[asyncio] >= 1.4.22, != 1.4.33, < 2.0.36
19
- typer >= 0.12.0, != 0.12.2, < 0.14.0
19
+ typer >= 0.12.0, != 0.12.2, < 0.16.0
@@ -1,5 +1,6 @@
1
1
  import asyncio
2
2
  import datetime
3
+ import ssl
3
4
  import warnings
4
5
  from contextlib import AsyncExitStack
5
6
  from typing import (
@@ -275,12 +276,18 @@ class PrefectClient:
275
276
  httpx_settings.setdefault("headers", {})
276
277
 
277
278
  if PREFECT_API_TLS_INSECURE_SKIP_VERIFY:
278
- httpx_settings.setdefault("verify", False)
279
+ # Create an unverified context for insecure connections
280
+ ctx = ssl.create_default_context()
281
+ ctx.check_hostname = False
282
+ ctx.verify_mode = ssl.CERT_NONE
283
+ httpx_settings.setdefault("verify", ctx)
279
284
  else:
280
285
  cert_file = PREFECT_API_SSL_CERT_FILE.value()
281
286
  if not cert_file:
282
287
  cert_file = certifi.where()
283
- httpx_settings.setdefault("verify", cert_file)
288
+ # Create a verified context with the certificate file
289
+ ctx = ssl.create_default_context(cafile=cert_file)
290
+ httpx_settings.setdefault("verify", ctx)
284
291
 
285
292
  if api_version is None:
286
293
  api_version = SERVER_API_VERSION
@@ -492,6 +499,23 @@ class PrefectClient:
492
499
  response = await self._client.get(f"/flows/{flow_id}")
493
500
  return Flow.parse_obj(response.json())
494
501
 
502
+ async def delete_flow(self, flow_id: UUID) -> None:
503
+ """
504
+ Delete a flow by UUID.
505
+ Args:
506
+ flow_id: ID of the flow to be deleted
507
+ Raises:
508
+ prefect.exceptions.ObjectNotFound: If request returns 404
509
+ httpx.RequestError: If requests fails
510
+ """
511
+ try:
512
+ await self._client.delete(f"/flows/{flow_id}")
513
+ except httpx.HTTPStatusError as e:
514
+ if e.response.status_code == status.HTTP_404_NOT_FOUND:
515
+ raise prefect.exceptions.ObjectNotFound(http_exc=e) from e
516
+ else:
517
+ raise
518
+
495
519
  async def read_flows(
496
520
  self,
497
521
  *,
@@ -3438,11 +3462,19 @@ class SyncPrefectClient:
3438
3462
 
3439
3463
  if PREFECT_API_TLS_INSECURE_SKIP_VERIFY:
3440
3464
  httpx_settings.setdefault("verify", False)
3465
+ # Create an unverified context for insecure connections
3466
+ ctx = ssl.create_default_context()
3467
+ ctx.check_hostname = False
3468
+ ctx.verify_mode = ssl.CERT_NONE
3469
+ httpx_settings.setdefault("verify", ctx)
3441
3470
  else:
3442
3471
  cert_file = PREFECT_API_SSL_CERT_FILE.value()
3443
3472
  if not cert_file:
3444
3473
  cert_file = certifi.where()
3445
3474
  httpx_settings.setdefault("verify", cert_file)
3475
+ # Create a verified context with the certificate file
3476
+ ctx = ssl.create_default_context(cafile=cert_file)
3477
+ httpx_settings.setdefault("verify", ctx)
3446
3478
 
3447
3479
  if api_version is None:
3448
3480
  api_version = SERVER_API_VERSION
@@ -410,6 +410,9 @@ class FlowRunPolicy(PrefectBaseModel):
410
410
  resuming: Optional[bool] = Field(
411
411
  default=False, description="Indicates if this run is resuming from a pause."
412
412
  )
413
+ retry_type: Optional[Literal["in_process", "reschedule"]] = Field(
414
+ default=None, description="The type of retry this run is undergoing."
415
+ )
413
416
 
414
417
  @root_validator
415
418
  def populate_deprecated_fields(cls, values):
@@ -342,6 +342,10 @@ class Task(Generic[P, R]):
342
342
 
343
343
  if callable(retry_delay_seconds):
344
344
  self.retry_delay_seconds = retry_delay_seconds(retries)
345
+ elif not isinstance(retry_delay_seconds, (list, int, float, type(None))):
346
+ raise TypeError(
347
+ f"Invalid `retry_delay_seconds` provided; must be an int, float, list or callable. Received type {type(retry_delay_seconds)}"
348
+ )
345
349
  else:
346
350
  self.retry_delay_seconds = retry_delay_seconds
347
351
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: prefect-client
3
- Version: 2.20.15
3
+ Version: 2.20.16
4
4
  Summary: Workflow orchestration and management.
5
5
  Home-page: https://www.prefect.io
6
6
  Author: Prefect Technologies, Inc.
@@ -937,7 +937,7 @@ class TestDeploymentApply:
937
937
  ):
938
938
  assert get_client().server_type.supports_automations()
939
939
 
940
- with respx.mock(base_url=PREFECT_API_URL.value()) as router:
940
+ with respx.mock(base_url=PREFECT_API_URL.value(), using="httpx") as router:
941
941
  router.post("/flows/").mock(
942
942
  return_value=httpx.Response(201, json={"id": str(uuid4())})
943
943
  )
@@ -989,7 +989,7 @@ class TestDeploymentApply:
989
989
  ):
990
990
  assert get_client().server_type.supports_automations()
991
991
 
992
- with respx.mock(base_url=PREFECT_API_URL.value()) as router:
992
+ with respx.mock(base_url=PREFECT_API_URL.value(), using="httpx") as router:
993
993
  router.post("/flows/").mock(
994
994
  return_value=httpx.Response(201, json={"id": str(uuid4())})
995
995
  )
@@ -1036,7 +1036,8 @@ class TestDeploymentApply:
1036
1036
  assert not get_client().server_type.supports_automations()
1037
1037
 
1038
1038
  with respx.mock(
1039
- base_url=PREFECT_API_URL.value(), assert_all_called=False
1039
+ assert_all_mocked=False,
1040
+ assert_all_called=False,
1040
1041
  ) as router:
1041
1042
  router.post("/flows/").mock(
1042
1043
  return_value=httpx.Response(201, json={"id": str(uuid4())})
@@ -1084,7 +1085,7 @@ class TestDeploymentApply:
1084
1085
  }
1085
1086
 
1086
1087
  with temporary_settings(updates=updates):
1087
- with respx.mock(base_url=PREFECT_API_URL.value()) as router:
1088
+ with respx.mock(base_url=PREFECT_API_URL.value(), using="httpx") as router:
1088
1089
  router.post("/flows/").mock(
1089
1090
  return_value=httpx.Response(201, json={"id": str(uuid4())})
1090
1091
  )
@@ -1169,6 +1170,7 @@ class TestRunDeployment:
1169
1170
  with respx.mock(
1170
1171
  base_url=PREFECT_API_URL.value(),
1171
1172
  assert_all_mocked=True,
1173
+ using="httpx",
1172
1174
  ) as router:
1173
1175
  poll_responses = [
1174
1176
  Response(
@@ -1217,6 +1219,7 @@ class TestRunDeployment:
1217
1219
  async with respx.mock(
1218
1220
  base_url=PREFECT_API_URL.value(),
1219
1221
  assert_all_mocked=True,
1222
+ using="httpx",
1220
1223
  ) as router:
1221
1224
  poll_responses = [
1222
1225
  Response(
@@ -1330,7 +1333,7 @@ class TestRunDeployment:
1330
1333
  }
1331
1334
 
1332
1335
  with respx.mock(
1333
- base_url=PREFECT_API_URL.value(), assert_all_mocked=True
1336
+ base_url=PREFECT_API_URL.value(), assert_all_mocked=True, using="httpx"
1334
1337
  ) as router:
1335
1338
  router.get("/csrf-token", params={"client": mock.ANY}).pass_through()
1336
1339
  router.get(f"/deployments/name/{d.flow_name}/{d.name}").pass_through()
@@ -1365,6 +1368,7 @@ class TestRunDeployment:
1365
1368
  base_url=PREFECT_API_URL.value(),
1366
1369
  assert_all_mocked=True,
1367
1370
  assert_all_called=False,
1371
+ using="httpx",
1368
1372
  ) as router:
1369
1373
  router.get("/csrf-token", params={"client": mock.ANY}).pass_through()
1370
1374
  router.get(f"/deployments/name/{d.flow_name}/{d.name}").pass_through()
@@ -1410,6 +1414,7 @@ class TestRunDeployment:
1410
1414
  base_url=PREFECT_API_URL.value(),
1411
1415
  assert_all_mocked=True,
1412
1416
  assert_all_called=False,
1417
+ using="httpx",
1413
1418
  ) as router:
1414
1419
  router.get("/csrf-token", params={"client": mock.ANY}).pass_through()
1415
1420
  router.get(f"/deployments/name/{d.flow_name}/{d.name}").pass_through()
@@ -3381,6 +3381,21 @@ class TestTaskMap:
3381
3381
 
3382
3382
 
3383
3383
  class TestTaskConstructorValidation:
3384
+ async def test_task_cannot_configure_poorly_typed_retry_delay(self):
3385
+ with pytest.raises(TypeError, match="Invalid"):
3386
+
3387
+ @task(retries=42, retry_delay_seconds=dict(x=4))
3388
+ async def insanity():
3389
+ raise RuntimeError("try again!")
3390
+
3391
+ with pytest.raises(TypeError, match="Invalid"):
3392
+
3393
+ @task(retries=42, retry_delay_seconds=2)
3394
+ async def sanity():
3395
+ raise RuntimeError("try again!")
3396
+
3397
+ more_insanity = sanity.with_options(retry_delay_seconds=dict(x=4)) # noqa: F841
3398
+
3384
3399
  async def test_task_cannot_configure_too_many_custom_retry_delays(self):
3385
3400
  with pytest.raises(ValueError, match="Can not configure more"):
3386
3401