prefect-client 2.20.1__tar.gz → 2.20.2__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.2/PKG-INFO +173 -0
  2. {prefect-client-2.20.1 → prefect_client-2.20.2}/setup.cfg +1 -1
  3. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/infrastructure/kubernetes.py +1 -1
  4. prefect_client-2.20.2/src/prefect/py.typed +0 -0
  5. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/runtime/flow_run.py +19 -0
  6. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/settings.py +5 -1
  7. prefect_client-2.20.2/src/prefect/utilities/__init__.py +0 -0
  8. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/workers/base.py +6 -1
  9. prefect_client-2.20.2/src/prefect_client.egg-info/PKG-INFO +173 -0
  10. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect_client.egg-info/SOURCES.txt +29 -1
  11. prefect_client-2.20.2/tests/test_artifacts.py +484 -0
  12. prefect_client-2.20.2/tests/test_automations.py +186 -0
  13. prefect_client-2.20.2/tests/test_background_tasks.py +401 -0
  14. prefect_client-2.20.2/tests/test_context.py +396 -0
  15. prefect_client-2.20.2/tests/test_deployments.py +1632 -0
  16. prefect_client-2.20.2/tests/test_engine.py +3417 -0
  17. prefect_client-2.20.2/tests/test_exceptions.py +139 -0
  18. prefect_client-2.20.2/tests/test_filesystems.py +782 -0
  19. prefect_client-2.20.2/tests/test_flow_runs.py +40 -0
  20. prefect_client-2.20.2/tests/test_flows.py +4416 -0
  21. prefect_client-2.20.2/tests/test_flows_compat.py +30 -0
  22. prefect_client-2.20.2/tests/test_futures.py +215 -0
  23. prefect_client-2.20.2/tests/test_highlighters.py +69 -0
  24. prefect_client-2.20.2/tests/test_import_interceptor.py +7 -0
  25. prefect_client-2.20.2/tests/test_log_prints.py +240 -0
  26. prefect_client-2.20.2/tests/test_logging.py +1586 -0
  27. prefect_client-2.20.2/tests/test_new_flow_engine.py +866 -0
  28. prefect_client-2.20.2/tests/test_new_task_engine.py +868 -0
  29. prefect_client-2.20.2/tests/test_plugins.py +259 -0
  30. prefect_client-2.20.2/tests/test_serializers.py +368 -0
  31. prefect_client-2.20.2/tests/test_settings.py +1062 -0
  32. prefect_client-2.20.2/tests/test_states.py +374 -0
  33. prefect_client-2.20.2/tests/test_task_runners.py +34 -0
  34. prefect_client-2.20.2/tests/test_task_server.py +551 -0
  35. prefect_client-2.20.2/tests/test_tasks.py +4304 -0
  36. prefect_client-2.20.2/tests/test_variables.py +94 -0
  37. prefect-client-2.20.1/PKG-INFO +0 -136
  38. prefect-client-2.20.1/src/prefect_client.egg-info/PKG-INFO +0 -136
  39. {prefect-client-2.20.1 → prefect_client-2.20.2}/LICENSE +0 -0
  40. {prefect-client-2.20.1 → prefect_client-2.20.2}/MANIFEST.in +0 -0
  41. {prefect-client-2.20.1 → prefect_client-2.20.2}/README.md +0 -0
  42. {prefect-client-2.20.1 → prefect_client-2.20.2}/requirements-client.txt +0 -0
  43. {prefect-client-2.20.1 → prefect_client-2.20.2}/requirements-dev.txt +0 -0
  44. {prefect-client-2.20.1 → prefect_client-2.20.2}/requirements.txt +0 -0
  45. {prefect-client-2.20.1 → prefect_client-2.20.2}/setup.py +0 -0
  46. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/.prefectignore +0 -0
  47. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/__init__.py +0 -0
  48. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/__init__.py +0 -0
  49. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/_logging.py +0 -0
  50. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/compatibility/__init__.py +0 -0
  51. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/compatibility/deprecated.py +0 -0
  52. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/compatibility/experimental.py +0 -0
  53. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/concurrency/__init__.py +0 -0
  54. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/concurrency/api.py +0 -0
  55. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/concurrency/calls.py +0 -0
  56. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/concurrency/cancellation.py +0 -0
  57. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/concurrency/event_loop.py +0 -0
  58. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/concurrency/inspection.py +0 -0
  59. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/concurrency/primitives.py +0 -0
  60. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/concurrency/services.py +0 -0
  61. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/concurrency/threads.py +0 -0
  62. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/concurrency/waiters.py +0 -0
  63. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/__init__.py +0 -0
  64. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/_base_model.py +0 -0
  65. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/_compat.py +0 -0
  66. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/_flags.py +0 -0
  67. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/_types.py +0 -0
  68. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/annotations/__init__.py +0 -0
  69. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/annotations/pendulum.py +0 -0
  70. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/schemas.py +0 -0
  71. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/__init__.py +0 -0
  72. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/config_dict.py +0 -0
  73. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/field_validator.py +0 -0
  74. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/model_construct.py +0 -0
  75. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/model_copy.py +0 -0
  76. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/model_dump.py +0 -0
  77. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/model_dump_json.py +0 -0
  78. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/model_fields.py +0 -0
  79. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/model_fields_set.py +0 -0
  80. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/model_json_schema.py +0 -0
  81. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/model_rebuild.py +0 -0
  82. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/model_validate.py +0 -0
  83. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/model_validate_json.py +0 -0
  84. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/model_validator.py +0 -0
  85. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/utilities/type_adapter.py +0 -0
  86. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/v1_schema.py +0 -0
  87. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/v2_schema.py +0 -0
  88. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pydantic/v2_validated_func.py +0 -0
  89. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/pytz.py +0 -0
  90. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/schemas/__init__.py +0 -0
  91. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/schemas/bases.py +0 -0
  92. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/schemas/fields.py +0 -0
  93. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/schemas/serializers.py +0 -0
  94. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_internal/schemas/validators.py +0 -0
  95. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/__init__.py +0 -0
  96. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/__init__.py +0 -0
  97. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/applications.py +0 -0
  98. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/background.py +0 -0
  99. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/concurrency.py +0 -0
  100. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/datastructures.py +0 -0
  101. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/dependencies/__init__.py +0 -0
  102. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/dependencies/models.py +0 -0
  103. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/dependencies/utils.py +0 -0
  104. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/encoders.py +0 -0
  105. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/exception_handlers.py +0 -0
  106. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/exceptions.py +0 -0
  107. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/logger.py +0 -0
  108. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/middleware/__init__.py +0 -0
  109. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/middleware/asyncexitstack.py +0 -0
  110. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/middleware/cors.py +0 -0
  111. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/middleware/gzip.py +0 -0
  112. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/middleware/httpsredirect.py +0 -0
  113. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/middleware/trustedhost.py +0 -0
  114. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/middleware/wsgi.py +0 -0
  115. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/openapi/__init__.py +0 -0
  116. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/openapi/constants.py +0 -0
  117. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/openapi/docs.py +0 -0
  118. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/openapi/models.py +0 -0
  119. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/openapi/utils.py +0 -0
  120. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/param_functions.py +0 -0
  121. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/params.py +0 -0
  122. {prefect-client-2.20.1/src/prefect → prefect_client-2.20.2/src/prefect/_vendor/fastapi}/py.typed +0 -0
  123. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/requests.py +0 -0
  124. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/responses.py +0 -0
  125. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/routing.py +0 -0
  126. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/security/__init__.py +0 -0
  127. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/security/api_key.py +0 -0
  128. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/security/base.py +0 -0
  129. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/security/http.py +0 -0
  130. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/security/oauth2.py +0 -0
  131. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/security/open_id_connect_url.py +0 -0
  132. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/security/utils.py +0 -0
  133. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/staticfiles.py +0 -0
  134. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/templating.py +0 -0
  135. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/testclient.py +0 -0
  136. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/types.py +0 -0
  137. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/utils.py +0 -0
  138. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/fastapi/websockets.py +0 -0
  139. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/__init__.py +0 -0
  140. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/_compat.py +0 -0
  141. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/_exception_handler.py +0 -0
  142. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/_utils.py +0 -0
  143. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/applications.py +0 -0
  144. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/authentication.py +0 -0
  145. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/background.py +0 -0
  146. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/concurrency.py +0 -0
  147. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/config.py +0 -0
  148. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/convertors.py +0 -0
  149. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/datastructures.py +0 -0
  150. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/endpoints.py +0 -0
  151. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/exceptions.py +0 -0
  152. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/formparsers.py +0 -0
  153. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/middleware/__init__.py +0 -0
  154. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/middleware/authentication.py +0 -0
  155. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/middleware/base.py +0 -0
  156. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/middleware/cors.py +0 -0
  157. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/middleware/errors.py +0 -0
  158. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/middleware/exceptions.py +0 -0
  159. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/middleware/gzip.py +0 -0
  160. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/middleware/httpsredirect.py +0 -0
  161. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/middleware/sessions.py +0 -0
  162. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/middleware/trustedhost.py +0 -0
  163. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/middleware/wsgi.py +0 -0
  164. /prefect-client-2.20.1/src/prefect/concurrency/__init__.py → /prefect_client-2.20.2/src/prefect/_vendor/starlette/py.typed +0 -0
  165. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/requests.py +0 -0
  166. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/responses.py +0 -0
  167. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/routing.py +0 -0
  168. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/schemas.py +0 -0
  169. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/staticfiles.py +0 -0
  170. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/status.py +0 -0
  171. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/templating.py +0 -0
  172. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/testclient.py +0 -0
  173. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/types.py +0 -0
  174. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_vendor/starlette/websockets.py +0 -0
  175. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/_version.py +0 -0
  176. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/agent.py +0 -0
  177. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/artifacts.py +0 -0
  178. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/automations.py +0 -0
  179. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/blocks/__init__.py +0 -0
  180. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/blocks/abstract.py +0 -0
  181. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/blocks/core.py +0 -0
  182. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/blocks/fields.py +0 -0
  183. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/blocks/kubernetes.py +0 -0
  184. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/blocks/notifications.py +0 -0
  185. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/blocks/system.py +0 -0
  186. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/blocks/webhook.py +0 -0
  187. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/__init__.py +0 -0
  188. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/base.py +0 -0
  189. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/cloud.py +0 -0
  190. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/collections.py +0 -0
  191. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/constants.py +0 -0
  192. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/orchestration.py +0 -0
  193. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/schemas/__init__.py +0 -0
  194. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/schemas/actions.py +0 -0
  195. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/schemas/filters.py +0 -0
  196. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/schemas/objects.py +0 -0
  197. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/schemas/responses.py +0 -0
  198. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/schemas/schedules.py +0 -0
  199. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/schemas/sorting.py +0 -0
  200. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/subscriptions.py +0 -0
  201. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/client/utilities.py +0 -0
  202. {prefect-client-2.20.1/src/prefect/deprecated → prefect_client-2.20.2/src/prefect/concurrency}/__init__.py +0 -0
  203. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/concurrency/asyncio.py +0 -0
  204. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/concurrency/events.py +0 -0
  205. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/concurrency/services.py +0 -0
  206. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/concurrency/sync.py +0 -0
  207. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/context.py +0 -0
  208. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deployments/__init__.py +0 -0
  209. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deployments/base.py +0 -0
  210. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deployments/deployments.py +0 -0
  211. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deployments/runner.py +0 -0
  212. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deployments/schedules.py +0 -0
  213. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deployments/steps/__init__.py +0 -0
  214. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deployments/steps/core.py +0 -0
  215. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deployments/steps/pull.py +0 -0
  216. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deployments/steps/utility.py +0 -0
  217. {prefect-client-2.20.1/src/prefect/events/cli → prefect_client-2.20.2/src/prefect/deprecated}/__init__.py +0 -0
  218. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deprecated/data_documents.py +0 -0
  219. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deprecated/packaging/__init__.py +0 -0
  220. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deprecated/packaging/base.py +0 -0
  221. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deprecated/packaging/docker.py +0 -0
  222. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deprecated/packaging/file.py +0 -0
  223. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deprecated/packaging/orion.py +0 -0
  224. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/deprecated/packaging/serializers.py +0 -0
  225. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/engine.py +0 -0
  226. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/__init__.py +0 -0
  227. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/actions.py +0 -0
  228. {prefect-client-2.20.1/src/prefect/utilities → prefect_client-2.20.2/src/prefect/events/cli}/__init__.py +0 -0
  229. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/cli/automations.py +0 -0
  230. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/clients.py +0 -0
  231. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/filters.py +0 -0
  232. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/instrument.py +0 -0
  233. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/related.py +0 -0
  234. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/schemas/__init__.py +0 -0
  235. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/schemas/automations.py +0 -0
  236. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/schemas/deployment_triggers.py +0 -0
  237. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/schemas/events.py +0 -0
  238. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/schemas/labelling.py +0 -0
  239. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/utilities.py +0 -0
  240. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/events/worker.py +0 -0
  241. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/exceptions.py +0 -0
  242. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/filesystems.py +0 -0
  243. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/flow_runs.py +0 -0
  244. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/flows.py +0 -0
  245. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/futures.py +0 -0
  246. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/infrastructure/__init__.py +0 -0
  247. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/infrastructure/base.py +0 -0
  248. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/infrastructure/container.py +0 -0
  249. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/infrastructure/process.py +0 -0
  250. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/infrastructure/provisioners/__init__.py +0 -0
  251. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/infrastructure/provisioners/cloud_run.py +0 -0
  252. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/infrastructure/provisioners/container_instance.py +0 -0
  253. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/infrastructure/provisioners/ecs.py +0 -0
  254. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/infrastructure/provisioners/modal.py +0 -0
  255. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/input/__init__.py +0 -0
  256. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/input/actions.py +0 -0
  257. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/input/run_input.py +0 -0
  258. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/logging/__init__.py +0 -0
  259. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/logging/configuration.py +0 -0
  260. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/logging/filters.py +0 -0
  261. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/logging/formatters.py +0 -0
  262. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/logging/handlers.py +0 -0
  263. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/logging/highlighters.py +0 -0
  264. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/logging/loggers.py +0 -0
  265. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/logging/logging.yml +0 -0
  266. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/manifests.py +0 -0
  267. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/new_flow_engine.py +0 -0
  268. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/new_task_engine.py +0 -0
  269. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/plugins.py +0 -0
  270. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/profiles.toml +0 -0
  271. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/pydantic/__init__.py +0 -0
  272. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/pydantic/main.py +0 -0
  273. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/results.py +0 -0
  274. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/runner/__init__.py +0 -0
  275. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/runner/runner.py +0 -0
  276. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/runner/server.py +0 -0
  277. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/runner/storage.py +0 -0
  278. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/runner/submit.py +0 -0
  279. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/runner/utils.py +0 -0
  280. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/runtime/__init__.py +0 -0
  281. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/runtime/deployment.py +0 -0
  282. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/runtime/task_run.py +0 -0
  283. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/serializers.py +0 -0
  284. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/server/api/collections_data/views/aggregate-worker-metadata.json +0 -0
  285. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/server/api/static/prefect-logo-mark-gradient.png +0 -0
  286. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/software/__init__.py +0 -0
  287. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/software/base.py +0 -0
  288. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/software/conda.py +0 -0
  289. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/software/pip.py +0 -0
  290. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/software/python.py +0 -0
  291. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/states.py +0 -0
  292. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/task_engine.py +0 -0
  293. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/task_runners.py +0 -0
  294. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/task_server.py +0 -0
  295. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/tasks.py +0 -0
  296. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/types/__init__.py +0 -0
  297. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/annotations.py +0 -0
  298. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/asyncutils.py +0 -0
  299. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/callables.py +0 -0
  300. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/collections.py +0 -0
  301. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/compat.py +0 -0
  302. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/context.py +0 -0
  303. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/dispatch.py +0 -0
  304. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/dockerutils.py +0 -0
  305. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/engine.py +0 -0
  306. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/filesystem.py +0 -0
  307. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/hashing.py +0 -0
  308. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/importtools.py +0 -0
  309. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/math.py +0 -0
  310. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/names.py +0 -0
  311. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/processutils.py +0 -0
  312. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/pydantic.py +0 -0
  313. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/render_swagger.py +0 -0
  314. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/schema_tools/__init__.py +0 -0
  315. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/schema_tools/hydration.py +0 -0
  316. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/schema_tools/validation.py +0 -0
  317. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/services.py +0 -0
  318. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/slugify.py +0 -0
  319. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/templating.py +0 -0
  320. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/text.py +0 -0
  321. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/timeout.py +0 -0
  322. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/utilities/visualization.py +0 -0
  323. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/variables.py +0 -0
  324. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/workers/__init__.py +0 -0
  325. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/workers/block.py +0 -0
  326. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/workers/process.py +0 -0
  327. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/workers/server.py +0 -0
  328. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect/workers/utilities.py +0 -0
  329. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect_client.egg-info/dependency_links.txt +0 -0
  330. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect_client.egg-info/requires.txt +0 -0
  331. {prefect-client-2.20.1 → prefect_client-2.20.2}/src/prefect_client.egg-info/top_level.txt +0 -0
  332. {prefect-client-2.20.1 → prefect_client-2.20.2}/versioneer.py +0 -0
@@ -0,0 +1,173 @@
1
+ Metadata-Version: 2.1
2
+ Name: prefect-client
3
+ Version: 2.20.2
4
+ Summary: Workflow orchestration and management.
5
+ Home-page: https://www.prefect.io
6
+ Author: Prefect Technologies, Inc.
7
+ Author-email: help@prefect.io
8
+ Project-URL: Changelog, https://github.com/PrefectHQ/prefect/blob/main/RELEASE-NOTES.md
9
+ Project-URL: Documentation, https://docs.prefect.io
10
+ Project-URL: Source, https://github.com/PrefectHQ/prefect
11
+ Project-URL: Tracker, https://github.com/PrefectHQ/prefect/issues
12
+ Classifier: Natural Language :: English
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: Intended Audience :: System Administrators
15
+ Classifier: License :: OSI Approved :: Apache Software License
16
+ Classifier: Programming Language :: Python :: 3 :: Only
17
+ Classifier: Programming Language :: Python :: 3.8
18
+ Classifier: Programming Language :: Python :: 3.9
19
+ Classifier: Programming Language :: Python :: 3.10
20
+ Classifier: Programming Language :: Python :: 3.11
21
+ Classifier: Topic :: Software Development :: Libraries
22
+ Requires-Python: >=3.8
23
+ Description-Content-Type: text/markdown
24
+ License-File: LICENSE
25
+ Requires-Dist: anyio<5.0.0,>=4.4.0
26
+ Requires-Dist: asgi-lifespan<3.0,>=1.0
27
+ Requires-Dist: cachetools<6.0,>=5.3
28
+ Requires-Dist: cloudpickle<4.0,>=2.0
29
+ Requires-Dist: coolname<3.0.0,>=1.0.4
30
+ Requires-Dist: croniter<3.0.0,>=1.0.12
31
+ Requires-Dist: fsspec>=2022.5.0
32
+ Requires-Dist: exceptiongroup>=1.2.1
33
+ Requires-Dist: graphviz>=0.20.1
34
+ Requires-Dist: griffe<0.48.0,>=0.20.0
35
+ Requires-Dist: httpcore<2.0.0,>=1.0.5
36
+ Requires-Dist: httpx[http2]!=0.23.2,>=0.23
37
+ Requires-Dist: importlib_metadata>=4.4; python_version < "3.10"
38
+ Requires-Dist: importlib-resources<6.2.0,>=6.1.3
39
+ Requires-Dist: jsonpatch<2.0,>=1.32
40
+ Requires-Dist: jsonschema<5.0.0,>=4.0.0
41
+ Requires-Dist: orjson<4.0,>=3.7
42
+ Requires-Dist: packaging<24.3,>=21.3
43
+ Requires-Dist: pathspec>=0.8.0
44
+ Requires-Dist: pendulum<3.0; python_version < "3.12"
45
+ Requires-Dist: pendulum<4,>=3.0.0; python_version >= "3.12"
46
+ Requires-Dist: pydantic[email]!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.10.0
47
+ Requires-Dist: pydantic_core<3.0.0,>=2.12.0
48
+ Requires-Dist: python_dateutil<3.0.0,>=2.8.2
49
+ Requires-Dist: python-slugify<9.0,>=5.0
50
+ Requires-Dist: pyyaml<7.0.0,>=5.4.1
51
+ Requires-Dist: rfc3339-validator<0.2.0,>=0.1.4
52
+ Requires-Dist: rich<14.0,>=11.0
53
+ Requires-Dist: ruamel.yaml>=0.17.0
54
+ Requires-Dist: sniffio<2.0.0,>=1.3.0
55
+ Requires-Dist: toml>=0.10.0
56
+ Requires-Dist: typing_extensions<5.0.0,>=4.5.0
57
+ Requires-Dist: ujson<6.0.0,>=5.8.0
58
+ Requires-Dist: uvicorn!=0.29.0,>=0.14.0
59
+ Requires-Dist: websockets<13.0,>=10.4
60
+ Requires-Dist: itsdangerous
61
+ Requires-Dist: python-multipart>=0.0.7
62
+ Provides-Extra: notifications
63
+ Requires-Dist: apprise<2.0.0,>=1.1.0; extra == "notifications"
64
+
65
+ <p align="center"><img src="https://github.com/PrefectHQ/prefect/assets/3407835/c654cbc6-63e8-4ada-a92a-efd2f8f24b85" width=1000></p>
66
+
67
+ <p align="center">
68
+ <a href="https://pypi.python.org/pypi/prefect-client/" alt="PyPI version">
69
+ <img alt="PyPI" src="https://img.shields.io/pypi/v/prefect-client?color=0052FF&labelColor=090422"></a>
70
+ <a href="https://github.com/prefecthq/prefect/" alt="Stars">
71
+ <img src="https://img.shields.io/github/stars/prefecthq/prefect?color=0052FF&labelColor=090422" /></a>
72
+ <a href="https://pepy.tech/badge/prefect-client/" alt="Downloads">
73
+ <img src="https://img.shields.io/pypi/dm/prefect-client?color=0052FF&labelColor=090422" /></a>
74
+ <a href="https://github.com/prefecthq/prefect/pulse" alt="Activity">
75
+ <img src="https://img.shields.io/github/commit-activity/m/prefecthq/prefect?color=0052FF&labelColor=090422" /></a>
76
+ <br>
77
+ <a href="https://prefect.io/slack" alt="Slack">
78
+ <img src="https://img.shields.io/badge/slack-join_community-red.svg?color=0052FF&labelColor=090422&logo=slack" /></a>
79
+ <a href="https://discourse.prefect.io/" alt="Discourse">
80
+ <img src="https://img.shields.io/badge/discourse-browse_forum-red.svg?color=0052FF&labelColor=090422&logo=discourse" /></a>
81
+ <a href="https://www.youtube.com/c/PrefectIO/" alt="YouTube">
82
+ <img src="https://img.shields.io/badge/youtube-watch_videos-red.svg?color=0052FF&labelColor=090422&logo=youtube" /></a>
83
+ </p>
84
+
85
+ # prefect-client
86
+
87
+ The `prefect-client` package is a minimal-installation of `prefect` which is designed for interacting with Prefect Cloud
88
+ or remote any `prefect` server. It sheds some functionality and dependencies in exchange for a smaller installation size,
89
+ making it ideal for use in lightweight or ephemeral environments. These characteristics make it ideal for use in lambdas
90
+ or other resource-constrained environments.
91
+
92
+
93
+ ## Getting started
94
+
95
+ `prefect-client` shares the same installation requirements as prefect. To install, make sure you are on Python 3.8 or
96
+ later and run the following command:
97
+
98
+ ```bash
99
+ pip install prefect-client
100
+ ```
101
+
102
+ Next, ensure that your `prefect-client` has access to a remote `prefect` server by exporting the `PREFECT_API_KEY`
103
+ (if using Prefect Cloud) and `PREFECT_API_URL` environment variables. Once those are set, use the package in your code as
104
+ you would normally use `prefect`!
105
+
106
+
107
+ For example, to remotely trigger a run a deployment:
108
+
109
+ ```python
110
+ from prefect.deployments import run_deployment
111
+
112
+
113
+ def my_lambda(event):
114
+ ...
115
+ run_deployment(
116
+ name="my-flow/my-deployment",
117
+ parameters={"foo": "bar"},
118
+ timeout=0,
119
+ )
120
+
121
+ my_lambda({})
122
+ ```
123
+
124
+ To emit events in an event driven system:
125
+
126
+ ```python
127
+ from prefect.events import emit_event
128
+
129
+
130
+ def something_happened():
131
+ emit_event("my-event", resource={"prefect.resource.id": "foo.bar"})
132
+
133
+ something_happened()
134
+ ```
135
+
136
+
137
+ Or just interact with a `prefect` API:
138
+ ```python
139
+ from prefect.client.orchestration import get_client
140
+
141
+
142
+ async def query_api():
143
+ async with get_client() as client:
144
+ limits = await client.read_concurrency_limits(limit=10, offset=0)
145
+ print(limits)
146
+
147
+
148
+ query_api()
149
+ ```
150
+
151
+
152
+ ## Known limitations
153
+ By design, `prefect-client` omits all CLI and server components. This means that the CLI is not available for use
154
+ and attempts to access server objects will fail. Furthermore, some classes, methods, and objects may be available
155
+ for import in `prefect-client` but may not be "runnable" if they tap into server-oriented functionality. If you
156
+ encounter such a limitation, feel free to [open an issue](https://github.com/PrefectHQ/prefect/issues/new/choose)
157
+ describing the functionality you are interested in using and we will do our best to make it available.
158
+
159
+
160
+ ## Next steps
161
+
162
+ There's lots more you can do to orchestrate and observe your workflows with Prefect!
163
+ Start with our [friendly tutorial](https://docs.prefect.io/tutorials) or explore the [core concepts of Prefect workflows](https://docs.prefect.io/concepts/).
164
+
165
+ ## Join the community
166
+
167
+ Prefect is made possible by the fastest growing community of thousands of friendly data engineers. Join us in building a new kind of workflow system. The [Prefect Slack community](https://prefect.io/slack) is a fantastic place to learn more about Prefect, ask questions, or get help with workflow design. All community forums, including code contributions, issue discussions, and slack messages are subject to our [Code of Conduct](https://discourse.prefect.io/faq).
168
+
169
+ ## Contribute
170
+
171
+ See our [documentation on contributing to Prefect](https://docs.prefect.io/contributing/overview/).
172
+
173
+ Thanks for being part of the mission to build a new kind of workflow system and, of course, **happy engineering!**
@@ -64,7 +64,7 @@ follow_imports = skip
64
64
  ignore_missing_imports = True
65
65
 
66
66
  [versioneer]
67
- vcs = git
67
+ VCS = git
68
68
  style = pep440
69
69
  versionfile_source = src/prefect/_version.py
70
70
  versionfile_build = prefect/_version.py
@@ -586,7 +586,7 @@ class KubernetesJob(Infrastructure):
586
586
  "prefect-job-"
587
587
  # We generate a name using a hash of the primary job settings
588
588
  + stable_hash(
589
- *self.command,
589
+ *self.command if self.command else "",
590
590
  *self.env.keys(),
591
591
  *[v for v in self.env.values() if v is not None],
592
592
  )
File without changes
@@ -12,12 +12,14 @@ Available attributes:
12
12
  - `scheduled_start_time`: the flow run's expected scheduled start time; defaults to now if not present
13
13
  - `name`: the name of the flow run
14
14
  - `flow_name`: the name of the flow
15
+ - `flow_version`: the version of the flow
15
16
  - `parameters`: the parameters that were passed to this run; note that these do not necessarily
16
17
  include default values set on the flow function, only the parameter values explicitly passed for the run
17
18
  - `parent_flow_run_id`: the ID of the flow run that triggered this run, if any
18
19
  - `parent_deployment_id`: the ID of the deployment that triggered this run, if any
19
20
  - `run_count`: the number of times this flow run has been run
20
21
  """
22
+
21
23
  import os
22
24
  from typing import Any, Dict, List, Optional
23
25
 
@@ -34,6 +36,7 @@ __all__ = [
34
36
  "scheduled_start_time",
35
37
  "name",
36
38
  "flow_name",
39
+ "flow_version",
37
40
  "parameters",
38
41
  "parent_flow_run_id",
39
42
  "parent_deployment_id",
@@ -188,6 +191,21 @@ def get_flow_name() -> Optional[str]:
188
191
  return flow_run_ctx.flow.name
189
192
 
190
193
 
194
+ def get_flow_version() -> Optional[str]:
195
+ flow_run_ctx = FlowRunContext.get()
196
+ run_id = get_id()
197
+ if flow_run_ctx is None and run_id is None:
198
+ return None
199
+ elif flow_run_ctx is None:
200
+ flow = from_sync.call_soon_in_loop_thread(
201
+ create_call(_get_flow_from_run, run_id)
202
+ ).result()
203
+
204
+ return flow.version
205
+ else:
206
+ return flow_run_ctx.flow.version
207
+
208
+
191
209
  def get_scheduled_start_time() -> pendulum.DateTime:
192
210
  flow_run_ctx = FlowRunContext.get()
193
211
  run_id = get_id()
@@ -271,6 +289,7 @@ FIELDS = {
271
289
  "scheduled_start_time": get_scheduled_start_time,
272
290
  "name": get_name,
273
291
  "flow_name": get_flow_name,
292
+ "flow_version": get_flow_version,
274
293
  "parameters": get_parameters,
275
294
  "parent_flow_run_id": get_parent_flow_run_id,
276
295
  "parent_deployment_id": get_parent_deployment_id,
@@ -345,7 +345,11 @@ def template_with_settings(*upstream_settings: Setting) -> Callable[["Settings",
345
345
  setting.name: setting.value_from(settings) for setting in upstream_settings
346
346
  }
347
347
  template = string.Template(str(value))
348
- return original_type(template.substitute(template_values))
348
+ # Note the use of `safe_substitute` to avoid raising an exception if a
349
+ # template value is missing. In this case, template values will be left
350
+ # as-is in the string. Using `safe_substitute` prevents us raising when
351
+ # the DB password contains a `$` character.
352
+ return original_type(template.safe_substitute(template_values))
349
353
 
350
354
  return templater
351
355
 
@@ -981,7 +981,12 @@ class BaseWorker(abc.ABC):
981
981
 
982
982
  deployment_vars = deployment.job_variables or {}
983
983
  flow_run_vars = flow_run.job_variables or {}
984
- job_variables = {**deployment_vars, **flow_run_vars}
984
+ job_variables = {**deployment_vars}
985
+
986
+ # merge environment variables carefully, otherwise full override
987
+ if isinstance(job_variables.get("env"), dict):
988
+ job_variables["env"].update(flow_run_vars.pop("env", {}))
989
+ job_variables.update(flow_run_vars)
985
990
 
986
991
  configuration = await self.job_configuration.from_template_and_values(
987
992
  base_job_template=self._work_pool.base_job_template,
@@ -0,0 +1,173 @@
1
+ Metadata-Version: 2.1
2
+ Name: prefect-client
3
+ Version: 2.20.2
4
+ Summary: Workflow orchestration and management.
5
+ Home-page: https://www.prefect.io
6
+ Author: Prefect Technologies, Inc.
7
+ Author-email: help@prefect.io
8
+ Project-URL: Changelog, https://github.com/PrefectHQ/prefect/blob/main/RELEASE-NOTES.md
9
+ Project-URL: Documentation, https://docs.prefect.io
10
+ Project-URL: Source, https://github.com/PrefectHQ/prefect
11
+ Project-URL: Tracker, https://github.com/PrefectHQ/prefect/issues
12
+ Classifier: Natural Language :: English
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: Intended Audience :: System Administrators
15
+ Classifier: License :: OSI Approved :: Apache Software License
16
+ Classifier: Programming Language :: Python :: 3 :: Only
17
+ Classifier: Programming Language :: Python :: 3.8
18
+ Classifier: Programming Language :: Python :: 3.9
19
+ Classifier: Programming Language :: Python :: 3.10
20
+ Classifier: Programming Language :: Python :: 3.11
21
+ Classifier: Topic :: Software Development :: Libraries
22
+ Requires-Python: >=3.8
23
+ Description-Content-Type: text/markdown
24
+ License-File: LICENSE
25
+ Requires-Dist: anyio<5.0.0,>=4.4.0
26
+ Requires-Dist: asgi-lifespan<3.0,>=1.0
27
+ Requires-Dist: cachetools<6.0,>=5.3
28
+ Requires-Dist: cloudpickle<4.0,>=2.0
29
+ Requires-Dist: coolname<3.0.0,>=1.0.4
30
+ Requires-Dist: croniter<3.0.0,>=1.0.12
31
+ Requires-Dist: fsspec>=2022.5.0
32
+ Requires-Dist: exceptiongroup>=1.2.1
33
+ Requires-Dist: graphviz>=0.20.1
34
+ Requires-Dist: griffe<0.48.0,>=0.20.0
35
+ Requires-Dist: httpcore<2.0.0,>=1.0.5
36
+ Requires-Dist: httpx[http2]!=0.23.2,>=0.23
37
+ Requires-Dist: importlib_metadata>=4.4; python_version < "3.10"
38
+ Requires-Dist: importlib-resources<6.2.0,>=6.1.3
39
+ Requires-Dist: jsonpatch<2.0,>=1.32
40
+ Requires-Dist: jsonschema<5.0.0,>=4.0.0
41
+ Requires-Dist: orjson<4.0,>=3.7
42
+ Requires-Dist: packaging<24.3,>=21.3
43
+ Requires-Dist: pathspec>=0.8.0
44
+ Requires-Dist: pendulum<3.0; python_version < "3.12"
45
+ Requires-Dist: pendulum<4,>=3.0.0; python_version >= "3.12"
46
+ Requires-Dist: pydantic[email]!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.10.0
47
+ Requires-Dist: pydantic_core<3.0.0,>=2.12.0
48
+ Requires-Dist: python_dateutil<3.0.0,>=2.8.2
49
+ Requires-Dist: python-slugify<9.0,>=5.0
50
+ Requires-Dist: pyyaml<7.0.0,>=5.4.1
51
+ Requires-Dist: rfc3339-validator<0.2.0,>=0.1.4
52
+ Requires-Dist: rich<14.0,>=11.0
53
+ Requires-Dist: ruamel.yaml>=0.17.0
54
+ Requires-Dist: sniffio<2.0.0,>=1.3.0
55
+ Requires-Dist: toml>=0.10.0
56
+ Requires-Dist: typing_extensions<5.0.0,>=4.5.0
57
+ Requires-Dist: ujson<6.0.0,>=5.8.0
58
+ Requires-Dist: uvicorn!=0.29.0,>=0.14.0
59
+ Requires-Dist: websockets<13.0,>=10.4
60
+ Requires-Dist: itsdangerous
61
+ Requires-Dist: python-multipart>=0.0.7
62
+ Provides-Extra: notifications
63
+ Requires-Dist: apprise<2.0.0,>=1.1.0; extra == "notifications"
64
+
65
+ <p align="center"><img src="https://github.com/PrefectHQ/prefect/assets/3407835/c654cbc6-63e8-4ada-a92a-efd2f8f24b85" width=1000></p>
66
+
67
+ <p align="center">
68
+ <a href="https://pypi.python.org/pypi/prefect-client/" alt="PyPI version">
69
+ <img alt="PyPI" src="https://img.shields.io/pypi/v/prefect-client?color=0052FF&labelColor=090422"></a>
70
+ <a href="https://github.com/prefecthq/prefect/" alt="Stars">
71
+ <img src="https://img.shields.io/github/stars/prefecthq/prefect?color=0052FF&labelColor=090422" /></a>
72
+ <a href="https://pepy.tech/badge/prefect-client/" alt="Downloads">
73
+ <img src="https://img.shields.io/pypi/dm/prefect-client?color=0052FF&labelColor=090422" /></a>
74
+ <a href="https://github.com/prefecthq/prefect/pulse" alt="Activity">
75
+ <img src="https://img.shields.io/github/commit-activity/m/prefecthq/prefect?color=0052FF&labelColor=090422" /></a>
76
+ <br>
77
+ <a href="https://prefect.io/slack" alt="Slack">
78
+ <img src="https://img.shields.io/badge/slack-join_community-red.svg?color=0052FF&labelColor=090422&logo=slack" /></a>
79
+ <a href="https://discourse.prefect.io/" alt="Discourse">
80
+ <img src="https://img.shields.io/badge/discourse-browse_forum-red.svg?color=0052FF&labelColor=090422&logo=discourse" /></a>
81
+ <a href="https://www.youtube.com/c/PrefectIO/" alt="YouTube">
82
+ <img src="https://img.shields.io/badge/youtube-watch_videos-red.svg?color=0052FF&labelColor=090422&logo=youtube" /></a>
83
+ </p>
84
+
85
+ # prefect-client
86
+
87
+ The `prefect-client` package is a minimal-installation of `prefect` which is designed for interacting with Prefect Cloud
88
+ or remote any `prefect` server. It sheds some functionality and dependencies in exchange for a smaller installation size,
89
+ making it ideal for use in lightweight or ephemeral environments. These characteristics make it ideal for use in lambdas
90
+ or other resource-constrained environments.
91
+
92
+
93
+ ## Getting started
94
+
95
+ `prefect-client` shares the same installation requirements as prefect. To install, make sure you are on Python 3.8 or
96
+ later and run the following command:
97
+
98
+ ```bash
99
+ pip install prefect-client
100
+ ```
101
+
102
+ Next, ensure that your `prefect-client` has access to a remote `prefect` server by exporting the `PREFECT_API_KEY`
103
+ (if using Prefect Cloud) and `PREFECT_API_URL` environment variables. Once those are set, use the package in your code as
104
+ you would normally use `prefect`!
105
+
106
+
107
+ For example, to remotely trigger a run a deployment:
108
+
109
+ ```python
110
+ from prefect.deployments import run_deployment
111
+
112
+
113
+ def my_lambda(event):
114
+ ...
115
+ run_deployment(
116
+ name="my-flow/my-deployment",
117
+ parameters={"foo": "bar"},
118
+ timeout=0,
119
+ )
120
+
121
+ my_lambda({})
122
+ ```
123
+
124
+ To emit events in an event driven system:
125
+
126
+ ```python
127
+ from prefect.events import emit_event
128
+
129
+
130
+ def something_happened():
131
+ emit_event("my-event", resource={"prefect.resource.id": "foo.bar"})
132
+
133
+ something_happened()
134
+ ```
135
+
136
+
137
+ Or just interact with a `prefect` API:
138
+ ```python
139
+ from prefect.client.orchestration import get_client
140
+
141
+
142
+ async def query_api():
143
+ async with get_client() as client:
144
+ limits = await client.read_concurrency_limits(limit=10, offset=0)
145
+ print(limits)
146
+
147
+
148
+ query_api()
149
+ ```
150
+
151
+
152
+ ## Known limitations
153
+ By design, `prefect-client` omits all CLI and server components. This means that the CLI is not available for use
154
+ and attempts to access server objects will fail. Furthermore, some classes, methods, and objects may be available
155
+ for import in `prefect-client` but may not be "runnable" if they tap into server-oriented functionality. If you
156
+ encounter such a limitation, feel free to [open an issue](https://github.com/PrefectHQ/prefect/issues/new/choose)
157
+ describing the functionality you are interested in using and we will do our best to make it available.
158
+
159
+
160
+ ## Next steps
161
+
162
+ There's lots more you can do to orchestrate and observe your workflows with Prefect!
163
+ Start with our [friendly tutorial](https://docs.prefect.io/tutorials) or explore the [core concepts of Prefect workflows](https://docs.prefect.io/concepts/).
164
+
165
+ ## Join the community
166
+
167
+ Prefect is made possible by the fastest growing community of thousands of friendly data engineers. Join us in building a new kind of workflow system. The [Prefect Slack community](https://prefect.io/slack) is a fantastic place to learn more about Prefect, ask questions, or get help with workflow design. All community forums, including code contributions, issue discussions, and slack messages are subject to our [Code of Conduct](https://discourse.prefect.io/faq).
168
+
169
+ ## Contribute
170
+
171
+ See our [documentation on contributing to Prefect](https://docs.prefect.io/contributing/overview/).
172
+
173
+ Thanks for being part of the mission to build a new kind of workflow system and, of course, **happy engineering!**
@@ -94,6 +94,7 @@ src/prefect/_vendor/fastapi/exceptions.py
94
94
  src/prefect/_vendor/fastapi/logger.py
95
95
  src/prefect/_vendor/fastapi/param_functions.py
96
96
  src/prefect/_vendor/fastapi/params.py
97
+ src/prefect/_vendor/fastapi/py.typed
97
98
  src/prefect/_vendor/fastapi/requests.py
98
99
  src/prefect/_vendor/fastapi/responses.py
99
100
  src/prefect/_vendor/fastapi/routing.py
@@ -139,6 +140,7 @@ src/prefect/_vendor/starlette/datastructures.py
139
140
  src/prefect/_vendor/starlette/endpoints.py
140
141
  src/prefect/_vendor/starlette/exceptions.py
141
142
  src/prefect/_vendor/starlette/formparsers.py
143
+ src/prefect/_vendor/starlette/py.typed
142
144
  src/prefect/_vendor/starlette/requests.py
143
145
  src/prefect/_vendor/starlette/responses.py
144
146
  src/prefect/_vendor/starlette/routing.py
@@ -298,4 +300,30 @@ src/prefect_client.egg-info/PKG-INFO
298
300
  src/prefect_client.egg-info/SOURCES.txt
299
301
  src/prefect_client.egg-info/dependency_links.txt
300
302
  src/prefect_client.egg-info/requires.txt
301
- src/prefect_client.egg-info/top_level.txt
303
+ src/prefect_client.egg-info/top_level.txt
304
+ tests/test_artifacts.py
305
+ tests/test_automations.py
306
+ tests/test_background_tasks.py
307
+ tests/test_context.py
308
+ tests/test_deployments.py
309
+ tests/test_engine.py
310
+ tests/test_exceptions.py
311
+ tests/test_filesystems.py
312
+ tests/test_flow_runs.py
313
+ tests/test_flows.py
314
+ tests/test_flows_compat.py
315
+ tests/test_futures.py
316
+ tests/test_highlighters.py
317
+ tests/test_import_interceptor.py
318
+ tests/test_log_prints.py
319
+ tests/test_logging.py
320
+ tests/test_new_flow_engine.py
321
+ tests/test_new_task_engine.py
322
+ tests/test_plugins.py
323
+ tests/test_serializers.py
324
+ tests/test_settings.py
325
+ tests/test_states.py
326
+ tests/test_task_runners.py
327
+ tests/test_task_server.py
328
+ tests/test_tasks.py
329
+ tests/test_variables.py