prefect-client 2.20.4__tar.gz → 3.0.0__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.
- {prefect_client-2.20.4/src/prefect_client.egg-info → prefect-client-3.0.0}/PKG-INFO +21 -55
- {prefect_client-2.20.4 → prefect-client-3.0.0}/README.md +12 -12
- {prefect_client-2.20.4 → prefect-client-3.0.0}/requirements-client.txt +10 -14
- {prefect_client-2.20.4 → prefect-client-3.0.0}/requirements-dev.txt +14 -15
- {prefect_client-2.20.4 → prefect-client-3.0.0}/requirements.txt +2 -3
- {prefect_client-2.20.4 → prefect-client-3.0.0}/setup.cfg +5 -12
- {prefect_client-2.20.4 → prefect-client-3.0.0}/setup.py +3 -3
- prefect-client-3.0.0/src/prefect/__init__.py +118 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/compatibility/deprecated.py +6 -115
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/compatibility/experimental.py +4 -79
- prefect-client-3.0.0/src/prefect/_internal/compatibility/migration.py +166 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/concurrency/__init__.py +2 -2
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/concurrency/api.py +1 -35
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/concurrency/calls.py +0 -6
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/concurrency/cancellation.py +0 -3
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/concurrency/event_loop.py +0 -20
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/concurrency/inspection.py +3 -3
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/concurrency/primitives.py +1 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/concurrency/services.py +23 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/concurrency/threads.py +35 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/concurrency/waiters.py +0 -28
- prefect-client-3.0.0/src/prefect/_internal/integrations.py +7 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/pydantic/annotations/pendulum.py +2 -2
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/pydantic/v1_schema.py +21 -22
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/pydantic/v2_schema.py +0 -2
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/pydantic/v2_validated_func.py +18 -23
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/pytz.py +1 -1
- prefect-client-3.0.0/src/prefect/_internal/retries.py +61 -0
- prefect-client-3.0.0/src/prefect/_internal/schemas/bases.py +122 -0
- prefect-client-3.0.0/src/prefect/_internal/schemas/fields.py +28 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/schemas/validators.py +47 -233
- prefect-client-3.0.0/src/prefect/agent.py +6 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/artifacts.py +173 -14
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/automations.py +39 -4
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/blocks/abstract.py +1 -1
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/blocks/core.py +405 -153
- prefect-client-3.0.0/src/prefect/blocks/fields.py +3 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/blocks/notifications.py +43 -28
- prefect-client-3.0.0/src/prefect/blocks/redis.py +168 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/blocks/system.py +67 -20
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/blocks/webhook.py +2 -9
- prefect-client-3.0.0/src/prefect/cache_policies.py +239 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/__init__.py +4 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/base.py +33 -27
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/cloud.py +65 -20
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/collections.py +1 -1
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/orchestration.py +650 -442
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/schemas/actions.py +115 -100
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/schemas/filters.py +46 -52
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/schemas/objects.py +228 -178
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/schemas/responses.py +18 -36
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/schemas/schedules.py +55 -36
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/schemas/sorting.py +2 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/subscriptions.py +8 -7
- prefect-client-3.0.0/src/prefect/client/types/flexible_schedule_list.py +11 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/utilities.py +9 -6
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/concurrency/asyncio.py +60 -11
- prefect-client-3.0.0/src/prefect/concurrency/context.py +24 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/concurrency/events.py +2 -2
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/concurrency/services.py +46 -16
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/concurrency/sync.py +51 -7
- prefect-client-3.0.0/src/prefect/concurrency/v1/asyncio.py +143 -0
- prefect-client-3.0.0/src/prefect/concurrency/v1/context.py +27 -0
- prefect-client-3.0.0/src/prefect/concurrency/v1/events.py +61 -0
- prefect-client-3.0.0/src/prefect/concurrency/v1/services.py +116 -0
- prefect-client-3.0.0/src/prefect/concurrency/v1/sync.py +92 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/context.py +246 -149
- prefect-client-3.0.0/src/prefect/deployments/__init__.py +33 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/deployments/base.py +10 -15
- prefect-client-3.0.0/src/prefect/deployments/deployments.py +3 -0
- prefect-client-3.0.0/src/prefect/deployments/flow_runs.py +178 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/deployments/runner.py +72 -173
- prefect-client-3.0.0/src/prefect/deployments/schedules.py +56 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/deployments/steps/__init__.py +0 -1
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/deployments/steps/core.py +7 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/deployments/steps/pull.py +15 -21
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/deployments/steps/utility.py +2 -1
- prefect-client-3.0.0/src/prefect/docker/__init__.py +20 -0
- prefect-client-3.0.0/src/prefect/docker/docker_image.py +82 -0
- prefect-client-3.0.0/src/prefect/engine.py +75 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/events/actions.py +17 -23
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/events/cli/automations.py +20 -7
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/events/clients.py +142 -80
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/events/filters.py +14 -18
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/events/related.py +74 -75
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/events/schemas/automations.py +55 -46
- prefect-client-3.0.0/src/prefect/events/schemas/deployment_triggers.py +105 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/events/schemas/events.py +46 -65
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/events/schemas/labelling.py +10 -14
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/events/utilities.py +4 -5
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/events/worker.py +23 -8
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/exceptions.py +15 -0
- prefect-client-3.0.0/src/prefect/filesystems.py +520 -0
- prefect-client-3.0.0/src/prefect/flow_engine.py +827 -0
- prefect-client-3.0.0/src/prefect/flow_runs.py +462 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/flows.py +470 -360
- prefect-client-3.0.0/src/prefect/futures.py +480 -0
- prefect-client-3.0.0/src/prefect/infrastructure/__init__.py +6 -0
- prefect-client-3.0.0/src/prefect/infrastructure/base.py +6 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/infrastructure/provisioners/__init__.py +5 -3
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/infrastructure/provisioners/cloud_run.py +13 -8
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/infrastructure/provisioners/container_instance.py +14 -9
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/infrastructure/provisioners/ecs.py +10 -8
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/infrastructure/provisioners/modal.py +8 -5
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/input/__init__.py +4 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/input/actions.py +2 -4
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/input/run_input.py +9 -9
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/logging/formatters.py +2 -4
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/logging/handlers.py +9 -14
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/logging/loggers.py +5 -5
- prefect-client-3.0.0/src/prefect/main.py +72 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/plugins.py +2 -64
- prefect-client-3.0.0/src/prefect/profiles.toml +17 -0
- prefect-client-3.0.0/src/prefect/records/__init__.py +1 -0
- prefect-client-3.0.0/src/prefect/records/base.py +223 -0
- prefect-client-3.0.0/src/prefect/records/filesystem.py +207 -0
- prefect-client-3.0.0/src/prefect/records/memory.py +178 -0
- prefect-client-3.0.0/src/prefect/records/result_store.py +64 -0
- prefect-client-3.0.0/src/prefect/results.py +842 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/runner/runner.py +117 -47
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/runner/server.py +32 -34
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/runner/storage.py +3 -12
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/runner/submit.py +2 -10
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/runner/utils.py +2 -2
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/runtime/__init__.py +1 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/runtime/deployment.py +1 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/runtime/flow_run.py +40 -5
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/runtime/task_run.py +1 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/serializers.py +28 -39
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/server/api/collections_data/views/aggregate-worker-metadata.json +5 -14
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/settings.py +209 -332
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/states.py +160 -63
- prefect-client-3.0.0/src/prefect/task_engine.py +1497 -0
- prefect-client-3.0.0/src/prefect/task_runners.py +461 -0
- prefect-client-3.0.0/src/prefect/task_runs.py +240 -0
- prefect-client-3.0.0/src/prefect/task_worker.py +463 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/tasks.py +684 -374
- prefect-client-3.0.0/src/prefect/transactions.py +410 -0
- prefect-client-3.0.0/src/prefect/types/__init__.py +98 -0
- prefect-client-3.0.0/src/prefect/types/entrypoint.py +13 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/annotations.py +4 -3
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/asyncutils.py +227 -148
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/callables.py +137 -45
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/collections.py +134 -86
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/dispatch.py +27 -14
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/dockerutils.py +11 -4
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/engine.py +186 -32
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/filesystem.py +4 -5
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/importtools.py +26 -27
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/pydantic.py +128 -38
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/schema_tools/hydration.py +18 -1
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/schema_tools/validation.py +30 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/services.py +35 -9
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/templating.py +12 -2
- prefect-client-3.0.0/src/prefect/utilities/timeout.py +49 -0
- prefect-client-3.0.0/src/prefect/utilities/urls.py +195 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/visualization.py +1 -0
- prefect-client-3.0.0/src/prefect/variables.py +133 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/workers/__init__.py +0 -1
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/workers/base.py +237 -244
- prefect-client-3.0.0/src/prefect/workers/block.py +6 -0
- prefect-client-3.0.0/src/prefect/workers/cloud.py +6 -0
- prefect-client-3.0.0/src/prefect/workers/process.py +523 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/workers/server.py +29 -11
- {prefect_client-2.20.4 → prefect-client-3.0.0/src/prefect_client.egg-info}/PKG-INFO +21 -55
- prefect-client-3.0.0/src/prefect_client.egg-info/SOURCES.txt +210 -0
- prefect-client-3.0.0/src/prefect_client.egg-info/dependency_links.txt +1 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect_client.egg-info/requires.txt +8 -12
- prefect_client-2.20.4/src/prefect/__init__.py +0 -154
- prefect_client-2.20.4/src/prefect/_internal/pydantic/__init__.py +0 -46
- prefect_client-2.20.4/src/prefect/_internal/pydantic/_base_model.py +0 -51
- prefect_client-2.20.4/src/prefect/_internal/pydantic/_compat.py +0 -82
- prefect_client-2.20.4/src/prefect/_internal/pydantic/_flags.py +0 -20
- prefect_client-2.20.4/src/prefect/_internal/pydantic/_types.py +0 -8
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/config_dict.py +0 -72
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/field_validator.py +0 -150
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/model_construct.py +0 -56
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/model_copy.py +0 -55
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/model_dump.py +0 -136
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/model_dump_json.py +0 -112
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/model_fields.py +0 -50
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/model_fields_set.py +0 -29
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/model_json_schema.py +0 -82
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/model_rebuild.py +0 -80
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/model_validate.py +0 -75
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/model_validate_json.py +0 -68
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/model_validator.py +0 -87
- prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities/type_adapter.py +0 -71
- prefect_client-2.20.4/src/prefect/_internal/schemas/bases.py +0 -254
- prefect_client-2.20.4/src/prefect/_internal/schemas/fields.py +0 -70
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/__init__.py +0 -25
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/applications.py +0 -946
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/background.py +0 -3
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/concurrency.py +0 -44
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/datastructures.py +0 -58
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/dependencies/models.py +0 -64
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/dependencies/utils.py +0 -877
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/encoders.py +0 -177
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/exception_handlers.py +0 -40
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/exceptions.py +0 -46
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/logger.py +0 -3
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/middleware/__init__.py +0 -1
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/middleware/asyncexitstack.py +0 -25
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/middleware/cors.py +0 -3
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/middleware/gzip.py +0 -3
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/middleware/httpsredirect.py +0 -3
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/middleware/trustedhost.py +0 -3
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/middleware/wsgi.py +0 -3
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/openapi/constants.py +0 -2
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/openapi/docs.py +0 -203
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/openapi/models.py +0 -480
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/openapi/utils.py +0 -485
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/param_functions.py +0 -340
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/params.py +0 -453
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/requests.py +0 -4
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/responses.py +0 -40
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/routing.py +0 -1331
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/security/__init__.py +0 -15
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/security/api_key.py +0 -98
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/security/base.py +0 -6
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/security/http.py +0 -172
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/security/oauth2.py +0 -227
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/security/open_id_connect_url.py +0 -34
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/security/utils.py +0 -10
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/staticfiles.py +0 -1
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/templating.py +0 -3
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/testclient.py +0 -1
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/types.py +0 -3
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/utils.py +0 -235
- prefect_client-2.20.4/src/prefect/_vendor/fastapi/websockets.py +0 -7
- prefect_client-2.20.4/src/prefect/_vendor/starlette/__init__.py +0 -1
- prefect_client-2.20.4/src/prefect/_vendor/starlette/_compat.py +0 -28
- prefect_client-2.20.4/src/prefect/_vendor/starlette/_exception_handler.py +0 -80
- prefect_client-2.20.4/src/prefect/_vendor/starlette/_utils.py +0 -88
- prefect_client-2.20.4/src/prefect/_vendor/starlette/applications.py +0 -261
- prefect_client-2.20.4/src/prefect/_vendor/starlette/authentication.py +0 -159
- prefect_client-2.20.4/src/prefect/_vendor/starlette/background.py +0 -43
- prefect_client-2.20.4/src/prefect/_vendor/starlette/concurrency.py +0 -59
- prefect_client-2.20.4/src/prefect/_vendor/starlette/config.py +0 -151
- prefect_client-2.20.4/src/prefect/_vendor/starlette/convertors.py +0 -87
- prefect_client-2.20.4/src/prefect/_vendor/starlette/datastructures.py +0 -707
- prefect_client-2.20.4/src/prefect/_vendor/starlette/endpoints.py +0 -130
- prefect_client-2.20.4/src/prefect/_vendor/starlette/exceptions.py +0 -60
- prefect_client-2.20.4/src/prefect/_vendor/starlette/formparsers.py +0 -276
- prefect_client-2.20.4/src/prefect/_vendor/starlette/middleware/__init__.py +0 -17
- prefect_client-2.20.4/src/prefect/_vendor/starlette/middleware/authentication.py +0 -52
- prefect_client-2.20.4/src/prefect/_vendor/starlette/middleware/base.py +0 -220
- prefect_client-2.20.4/src/prefect/_vendor/starlette/middleware/cors.py +0 -176
- prefect_client-2.20.4/src/prefect/_vendor/starlette/middleware/errors.py +0 -265
- prefect_client-2.20.4/src/prefect/_vendor/starlette/middleware/exceptions.py +0 -74
- prefect_client-2.20.4/src/prefect/_vendor/starlette/middleware/gzip.py +0 -113
- prefect_client-2.20.4/src/prefect/_vendor/starlette/middleware/httpsredirect.py +0 -19
- prefect_client-2.20.4/src/prefect/_vendor/starlette/middleware/sessions.py +0 -82
- prefect_client-2.20.4/src/prefect/_vendor/starlette/middleware/trustedhost.py +0 -64
- prefect_client-2.20.4/src/prefect/_vendor/starlette/middleware/wsgi.py +0 -147
- prefect_client-2.20.4/src/prefect/_vendor/starlette/py.typed +0 -0
- prefect_client-2.20.4/src/prefect/_vendor/starlette/requests.py +0 -328
- prefect_client-2.20.4/src/prefect/_vendor/starlette/responses.py +0 -347
- prefect_client-2.20.4/src/prefect/_vendor/starlette/routing.py +0 -933
- prefect_client-2.20.4/src/prefect/_vendor/starlette/schemas.py +0 -154
- prefect_client-2.20.4/src/prefect/_vendor/starlette/staticfiles.py +0 -248
- prefect_client-2.20.4/src/prefect/_vendor/starlette/status.py +0 -199
- prefect_client-2.20.4/src/prefect/_vendor/starlette/templating.py +0 -231
- prefect_client-2.20.4/src/prefect/_vendor/starlette/testclient.py +0 -804
- prefect_client-2.20.4/src/prefect/_vendor/starlette/types.py +0 -30
- prefect_client-2.20.4/src/prefect/_vendor/starlette/websockets.py +0 -193
- prefect_client-2.20.4/src/prefect/agent.py +0 -698
- prefect_client-2.20.4/src/prefect/blocks/fields.py +0 -58
- prefect_client-2.20.4/src/prefect/blocks/kubernetes.py +0 -119
- prefect_client-2.20.4/src/prefect/deployments/__init__.py +0 -18
- prefect_client-2.20.4/src/prefect/deployments/deployments.py +0 -1049
- prefect_client-2.20.4/src/prefect/deployments/schedules.py +0 -50
- prefect_client-2.20.4/src/prefect/deprecated/data_documents.py +0 -350
- prefect_client-2.20.4/src/prefect/deprecated/packaging/__init__.py +0 -12
- prefect_client-2.20.4/src/prefect/deprecated/packaging/base.py +0 -96
- prefect_client-2.20.4/src/prefect/deprecated/packaging/docker.py +0 -146
- prefect_client-2.20.4/src/prefect/deprecated/packaging/file.py +0 -92
- prefect_client-2.20.4/src/prefect/deprecated/packaging/orion.py +0 -80
- prefect_client-2.20.4/src/prefect/deprecated/packaging/serializers.py +0 -171
- prefect_client-2.20.4/src/prefect/engine.py +0 -2535
- prefect_client-2.20.4/src/prefect/events/cli/__init__.py +0 -0
- prefect_client-2.20.4/src/prefect/events/instrument.py +0 -135
- prefect_client-2.20.4/src/prefect/events/schemas/__init__.py +0 -5
- prefect_client-2.20.4/src/prefect/events/schemas/deployment_triggers.py +0 -295
- prefect_client-2.20.4/src/prefect/filesystems.py +0 -1019
- prefect_client-2.20.4/src/prefect/flow_runs.py +0 -90
- prefect_client-2.20.4/src/prefect/futures.py +0 -429
- prefect_client-2.20.4/src/prefect/infrastructure/__init__.py +0 -27
- prefect_client-2.20.4/src/prefect/infrastructure/base.py +0 -323
- prefect_client-2.20.4/src/prefect/infrastructure/container.py +0 -824
- prefect_client-2.20.4/src/prefect/infrastructure/kubernetes.py +0 -920
- prefect_client-2.20.4/src/prefect/infrastructure/process.py +0 -289
- prefect_client-2.20.4/src/prefect/manifests.py +0 -20
- prefect_client-2.20.4/src/prefect/new_flow_engine.py +0 -449
- prefect_client-2.20.4/src/prefect/new_task_engine.py +0 -423
- prefect_client-2.20.4/src/prefect/profiles.toml +0 -3
- prefect_client-2.20.4/src/prefect/py.typed +0 -0
- prefect_client-2.20.4/src/prefect/pydantic/__init__.py +0 -76
- prefect_client-2.20.4/src/prefect/pydantic/main.py +0 -39
- prefect_client-2.20.4/src/prefect/results.py +0 -769
- prefect_client-2.20.4/src/prefect/software/__init__.py +0 -2
- prefect_client-2.20.4/src/prefect/software/base.py +0 -50
- prefect_client-2.20.4/src/prefect/software/conda.py +0 -199
- prefect_client-2.20.4/src/prefect/software/pip.py +0 -122
- prefect_client-2.20.4/src/prefect/software/python.py +0 -52
- prefect_client-2.20.4/src/prefect/task_engine.py +0 -76
- prefect_client-2.20.4/src/prefect/task_runners.py +0 -365
- prefect_client-2.20.4/src/prefect/task_server.py +0 -322
- prefect_client-2.20.4/src/prefect/types/__init__.py +0 -112
- prefect_client-2.20.4/src/prefect/utilities/__init__.py +0 -0
- prefect_client-2.20.4/src/prefect/utilities/timeout.py +0 -34
- prefect_client-2.20.4/src/prefect/variables.py +0 -114
- prefect_client-2.20.4/src/prefect/workers/block.py +0 -227
- prefect_client-2.20.4/src/prefect/workers/process.py +0 -270
- prefect_client-2.20.4/src/prefect_client.egg-info/SOURCES.txt +0 -329
- prefect_client-2.20.4/tests/test_artifacts.py +0 -484
- prefect_client-2.20.4/tests/test_automations.py +0 -186
- prefect_client-2.20.4/tests/test_background_tasks.py +0 -401
- prefect_client-2.20.4/tests/test_context.py +0 -396
- prefect_client-2.20.4/tests/test_deployments.py +0 -1632
- prefect_client-2.20.4/tests/test_engine.py +0 -3417
- prefect_client-2.20.4/tests/test_exceptions.py +0 -139
- prefect_client-2.20.4/tests/test_filesystems.py +0 -782
- prefect_client-2.20.4/tests/test_flow_runs.py +0 -40
- prefect_client-2.20.4/tests/test_flows.py +0 -4430
- prefect_client-2.20.4/tests/test_flows_compat.py +0 -30
- prefect_client-2.20.4/tests/test_futures.py +0 -215
- prefect_client-2.20.4/tests/test_highlighters.py +0 -69
- prefect_client-2.20.4/tests/test_import_interceptor.py +0 -7
- prefect_client-2.20.4/tests/test_log_prints.py +0 -240
- prefect_client-2.20.4/tests/test_logging.py +0 -1586
- prefect_client-2.20.4/tests/test_new_flow_engine.py +0 -866
- prefect_client-2.20.4/tests/test_new_task_engine.py +0 -868
- prefect_client-2.20.4/tests/test_plugins.py +0 -259
- prefect_client-2.20.4/tests/test_serializers.py +0 -368
- prefect_client-2.20.4/tests/test_settings.py +0 -1062
- prefect_client-2.20.4/tests/test_states.py +0 -374
- prefect_client-2.20.4/tests/test_task_runners.py +0 -34
- prefect_client-2.20.4/tests/test_task_server.py +0 -551
- prefect_client-2.20.4/tests/test_tasks.py +0 -4304
- prefect_client-2.20.4/tests/test_variables.py +0 -94
- {prefect_client-2.20.4 → prefect-client-3.0.0}/LICENSE +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/MANIFEST.in +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/.prefectignore +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/__init__.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/_logging.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/compatibility/__init__.py +0 -0
- /prefect_client-2.20.4/src/prefect_client.egg-info/dependency_links.txt → /prefect-client-3.0.0/src/prefect/_internal/pydantic/__init__.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/pydantic/annotations/__init__.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/pydantic/schemas.py +0 -0
- {prefect_client-2.20.4/src/prefect/_internal/pydantic/utilities → prefect-client-3.0.0/src/prefect/_internal/schemas}/__init__.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/schemas/serializers.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_version.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/blocks/__init__.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/constants.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/client/schemas/__init__.py +0 -0
- {prefect_client-2.20.4/src/prefect/_internal/schemas → prefect-client-3.0.0/src/prefect/client/types}/__init__.py +0 -0
- {prefect_client-2.20.4/src/prefect/_vendor → prefect-client-3.0.0/src/prefect/concurrency}/__init__.py +0 -0
- {prefect_client-2.20.4/src/prefect/_vendor/fastapi/dependencies → prefect-client-3.0.0/src/prefect/concurrency/v1}/__init__.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/events/__init__.py +0 -0
- {prefect_client-2.20.4/src/prefect/_vendor/fastapi/openapi → prefect-client-3.0.0/src/prefect/events/cli}/__init__.py +0 -0
- {prefect_client-2.20.4/src/prefect/concurrency → prefect-client-3.0.0/src/prefect/events/schemas}/__init__.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/logging/__init__.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/logging/configuration.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/logging/filters.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/logging/highlighters.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/logging/logging.yml +0 -0
- {prefect_client-2.20.4/src/prefect/_vendor/fastapi → prefect-client-3.0.0/src/prefect}/py.typed +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/runner/__init__.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/server/api/static/prefect-logo-mark-gradient.png +0 -0
- {prefect_client-2.20.4/src/prefect/deprecated → prefect-client-3.0.0/src/prefect/utilities}/__init__.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/compat.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/context.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/hashing.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/math.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/names.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/processutils.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/render_swagger.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/schema_tools/__init__.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/slugify.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/utilities/text.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/workers/utilities.py +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect_client.egg-info/top_level.txt +0 -0
- {prefect_client-2.20.4 → prefect-client-3.0.0}/versioneer.py +0 -0
@@ -1,66 +1,30 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: prefect-client
|
3
|
-
Version:
|
3
|
+
Version: 3.0.0
|
4
4
|
Summary: Workflow orchestration and management.
|
5
5
|
Home-page: https://www.prefect.io
|
6
6
|
Author: Prefect Technologies, Inc.
|
7
7
|
Author-email: help@prefect.io
|
8
|
-
|
8
|
+
License: UNKNOWN
|
9
|
+
Project-URL: Changelog, https://github.com/PrefectHQ/prefect/releases
|
9
10
|
Project-URL: Documentation, https://docs.prefect.io
|
10
11
|
Project-URL: Source, https://github.com/PrefectHQ/prefect
|
11
12
|
Project-URL: Tracker, https://github.com/PrefectHQ/prefect/issues
|
13
|
+
Platform: UNKNOWN
|
12
14
|
Classifier: Natural Language :: English
|
13
15
|
Classifier: Intended Audience :: Developers
|
14
16
|
Classifier: Intended Audience :: System Administrators
|
15
17
|
Classifier: License :: OSI Approved :: Apache Software License
|
16
18
|
Classifier: Programming Language :: Python :: 3 :: Only
|
17
|
-
Classifier: Programming Language :: Python :: 3.8
|
18
19
|
Classifier: Programming Language :: Python :: 3.9
|
19
20
|
Classifier: Programming Language :: Python :: 3.10
|
20
21
|
Classifier: Programming Language :: Python :: 3.11
|
22
|
+
Classifier: Programming Language :: Python :: 3.12
|
21
23
|
Classifier: Topic :: Software Development :: Libraries
|
22
|
-
Requires-Python: >=3.
|
24
|
+
Requires-Python: >=3.9
|
23
25
|
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<2.0.0,>=0.49.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.5.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<14.0,>=10.4
|
60
|
-
Requires-Dist: itsdangerous
|
61
|
-
Requires-Dist: python-multipart>=0.0.7
|
62
26
|
Provides-Extra: notifications
|
63
|
-
|
27
|
+
License-File: LICENSE
|
64
28
|
|
65
29
|
<p align="center"><img src="https://github.com/PrefectHQ/prefect/assets/3407835/c654cbc6-63e8-4ada-a92a-efd2f8f24b85" width=1000></p>
|
66
30
|
|
@@ -84,24 +48,24 @@ Requires-Dist: apprise<2.0.0,>=1.1.0; extra == "notifications"
|
|
84
48
|
|
85
49
|
# prefect-client
|
86
50
|
|
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.
|
51
|
+
The `prefect-client` package is a minimal-installation of `prefect` which is designed for interacting with Prefect Cloud
|
52
|
+
or remote any `prefect` server. It sheds some functionality and dependencies in exchange for a smaller installation size,
|
53
|
+
making it ideal for use in lightweight or ephemeral environments. These characteristics make it ideal for use in lambdas
|
54
|
+
or other resource-constrained environments.
|
91
55
|
|
92
56
|
|
93
57
|
## Getting started
|
94
58
|
|
95
|
-
`prefect-client` shares the same installation requirements as prefect. To install, make sure you are on Python 3.
|
59
|
+
`prefect-client` shares the same installation requirements as prefect. To install, make sure you are on Python 3.9 or
|
96
60
|
later and run the following command:
|
97
61
|
|
98
62
|
```bash
|
99
63
|
pip install prefect-client
|
100
64
|
```
|
101
65
|
|
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`!
|
66
|
+
Next, ensure that your `prefect-client` has access to a remote `prefect` server by exporting the `PREFECT_API_KEY`
|
67
|
+
(if using Prefect Cloud) and `PREFECT_API_URL` environment variables. Once those are set, use the package in your code as
|
68
|
+
you would normally use `prefect`!
|
105
69
|
|
106
70
|
|
107
71
|
For example, to remotely trigger a run a deployment:
|
@@ -150,10 +114,10 @@ query_api()
|
|
150
114
|
|
151
115
|
|
152
116
|
## 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)
|
117
|
+
By design, `prefect-client` omits all CLI and server components. This means that the CLI is not available for use
|
118
|
+
and attempts to access server objects will fail. Furthermore, some classes, methods, and objects may be available
|
119
|
+
for import in `prefect-client` but may not be "runnable" if they tap into server-oriented functionality. If you
|
120
|
+
encounter such a limitation, feel free to [open an issue](https://github.com/PrefectHQ/prefect/issues/new/choose)
|
157
121
|
describing the functionality you are interested in using and we will do our best to make it available.
|
158
122
|
|
159
123
|
|
@@ -171,3 +135,5 @@ Prefect is made possible by the fastest growing community of thousands of friend
|
|
171
135
|
See our [documentation on contributing to Prefect](https://docs.prefect.io/contributing/overview/).
|
172
136
|
|
173
137
|
Thanks for being part of the mission to build a new kind of workflow system and, of course, **happy engineering!**
|
138
|
+
|
139
|
+
|
@@ -20,24 +20,24 @@
|
|
20
20
|
|
21
21
|
# prefect-client
|
22
22
|
|
23
|
-
The `prefect-client` package is a minimal-installation of `prefect` which is designed for interacting with Prefect Cloud
|
24
|
-
or remote any `prefect` server. It sheds some functionality and dependencies in exchange for a smaller installation size,
|
25
|
-
making it ideal for use in lightweight or ephemeral environments. These characteristics make it ideal for use in lambdas
|
26
|
-
or other resource-constrained environments.
|
23
|
+
The `prefect-client` package is a minimal-installation of `prefect` which is designed for interacting with Prefect Cloud
|
24
|
+
or remote any `prefect` server. It sheds some functionality and dependencies in exchange for a smaller installation size,
|
25
|
+
making it ideal for use in lightweight or ephemeral environments. These characteristics make it ideal for use in lambdas
|
26
|
+
or other resource-constrained environments.
|
27
27
|
|
28
28
|
|
29
29
|
## Getting started
|
30
30
|
|
31
|
-
`prefect-client` shares the same installation requirements as prefect. To install, make sure you are on Python 3.
|
31
|
+
`prefect-client` shares the same installation requirements as prefect. To install, make sure you are on Python 3.9 or
|
32
32
|
later and run the following command:
|
33
33
|
|
34
34
|
```bash
|
35
35
|
pip install prefect-client
|
36
36
|
```
|
37
37
|
|
38
|
-
Next, ensure that your `prefect-client` has access to a remote `prefect` server by exporting the `PREFECT_API_KEY`
|
39
|
-
(if using Prefect Cloud) and `PREFECT_API_URL` environment variables. Once those are set, use the package in your code as
|
40
|
-
you would normally use `prefect`!
|
38
|
+
Next, ensure that your `prefect-client` has access to a remote `prefect` server by exporting the `PREFECT_API_KEY`
|
39
|
+
(if using Prefect Cloud) and `PREFECT_API_URL` environment variables. Once those are set, use the package in your code as
|
40
|
+
you would normally use `prefect`!
|
41
41
|
|
42
42
|
|
43
43
|
For example, to remotely trigger a run a deployment:
|
@@ -86,10 +86,10 @@ query_api()
|
|
86
86
|
|
87
87
|
|
88
88
|
## Known limitations
|
89
|
-
By design, `prefect-client` omits all CLI and server components. This means that the CLI is not available for use
|
90
|
-
and attempts to access server objects will fail. Furthermore, some classes, methods, and objects may be available
|
91
|
-
for import in `prefect-client` but may not be "runnable" if they tap into server-oriented functionality. If you
|
92
|
-
encounter such a limitation, feel free to [open an issue](https://github.com/PrefectHQ/prefect/issues/new/choose)
|
89
|
+
By design, `prefect-client` omits all CLI and server components. This means that the CLI is not available for use
|
90
|
+
and attempts to access server objects will fail. Furthermore, some classes, methods, and objects may be available
|
91
|
+
for import in `prefect-client` but may not be "runnable" if they tap into server-oriented functionality. If you
|
92
|
+
encounter such a limitation, feel free to [open an issue](https://github.com/PrefectHQ/prefect/issues/new/choose)
|
93
93
|
describing the functionality you are interested in using and we will do our best to make it available.
|
94
94
|
|
95
95
|
|
@@ -3,26 +3,26 @@ asgi-lifespan >= 1.0, < 3.0
|
|
3
3
|
cachetools >= 5.3, < 6.0
|
4
4
|
cloudpickle >= 2.0, < 4.0
|
5
5
|
coolname >= 1.0.4, < 3.0.0
|
6
|
-
croniter >= 1.0.12, <
|
6
|
+
croniter >= 1.0.12, < 4.0.0
|
7
|
+
exceptiongroup >= 1.0.0
|
8
|
+
fastapi >= 0.111.0, < 1.0.0
|
7
9
|
fsspec >= 2022.5.0
|
8
|
-
exceptiongroup >= 1.2.1
|
9
10
|
graphviz >= 0.20.1
|
10
11
|
griffe >= 0.49.0, <2.0.0
|
11
12
|
httpcore >=1.0.5, < 2.0.0
|
12
13
|
httpx[http2] >= 0.23, != 0.23.2
|
13
14
|
importlib_metadata >= 4.4; python_version < '3.10'
|
14
|
-
importlib-resources >= 6.1.3, < 6.5.0
|
15
15
|
jsonpatch >= 1.32, < 2.0
|
16
16
|
jsonschema >= 4.0.0, < 5.0.0
|
17
17
|
orjson >= 3.7, < 4.0
|
18
18
|
packaging >= 21.3, < 24.3
|
19
19
|
pathspec >= 0.8.0
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
# the version constraints for pydantic are merged with those from fastapi 0.103.2
|
24
|
-
pydantic[email]>=1.10.0,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0
|
20
|
+
pendulum >= 3.0.0, <4
|
21
|
+
prometheus-client >= 0.20.0
|
22
|
+
pydantic >= 2.7, < 3.0.0
|
25
23
|
pydantic_core >= 2.12.0, < 3.0.0
|
24
|
+
pydantic_extra_types >= 2.8.2, < 3.0.0
|
25
|
+
pydantic_settings
|
26
26
|
python_dateutil >= 2.8.2, < 3.0.0
|
27
27
|
python-slugify >= 5.0, < 9.0
|
28
28
|
pyyaml >= 5.4.1, < 7.0.0
|
@@ -33,9 +33,5 @@ sniffio >=1.3.0, < 2.0.0
|
|
33
33
|
toml >= 0.10.0
|
34
34
|
typing_extensions >= 4.5.0, < 5.0.0
|
35
35
|
ujson >= 5.8.0, < 6.0.0
|
36
|
-
uvicorn >=
|
37
|
-
websockets >= 10.4, < 14.0
|
38
|
-
|
39
|
-
# additional dependencies of starlette, which we're currently vendoring
|
40
|
-
itsdangerous
|
41
|
-
python-multipart>=0.0.7
|
36
|
+
uvicorn >=0.14.0, !=0.29.0
|
37
|
+
websockets >= 10.4, < 14.0
|
@@ -1,34 +1,27 @@
|
|
1
1
|
ruff
|
2
2
|
cairosvg
|
3
3
|
codespell>=2.2.6
|
4
|
-
|
5
|
-
# https://github.com/ipython/ipython/blob/main/README.rst
|
6
|
-
ipython == 8.12.*; python_version == '3.8'
|
7
|
-
ipython; python_version > '3.8'
|
4
|
+
ipython
|
8
5
|
jinja2
|
9
|
-
mkdocs
|
10
|
-
mkdocs-gen-files
|
11
|
-
mkdocs-material
|
12
|
-
mkdocstrings-python
|
13
|
-
mike
|
14
|
-
mock; python_version < '3.8'
|
15
6
|
moto >= 5
|
16
7
|
mypy >= 1.9.0
|
17
8
|
numpy
|
18
9
|
pillow
|
19
10
|
pre-commit
|
20
11
|
pluggy >= 1.4.0
|
21
|
-
pytest > 7, < 9
|
12
|
+
pytest > 7, < 9
|
22
13
|
pytest-asyncio >= 0.18.2, != 0.22.0, < 0.23.0 # Cannot override event loop in 0.23.0. See https://github.com/pytest-dev/pytest-asyncio/issues/706 for more details.
|
23
|
-
pytest-cov
|
24
14
|
pytest-benchmark
|
15
|
+
pytest-codspeed
|
16
|
+
pytest-cov
|
25
17
|
pytest-env
|
26
18
|
pytest-flakefinder
|
27
19
|
pytest-timeout
|
28
|
-
pytest-xdist
|
29
|
-
pytkdocs >= 0.14.2
|
20
|
+
pytest-xdist >= 3.6.1
|
30
21
|
pyyaml
|
31
|
-
|
22
|
+
redis>=5.0.1
|
23
|
+
setuptools
|
24
|
+
vale
|
32
25
|
vermin
|
33
26
|
virtualenv
|
34
27
|
watchfiles
|
@@ -37,3 +30,9 @@ respx
|
|
37
30
|
# type stubs
|
38
31
|
types-cachetools
|
39
32
|
types-PyYAML
|
33
|
+
|
34
|
+
# documentation
|
35
|
+
mkdocs
|
36
|
+
mkdocs-material
|
37
|
+
mkdocstrings[python]
|
38
|
+
mkdocs-gen-files
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
aiosqlite >= 0.17.0, < 1.0.0
|
4
4
|
alembic >= 1.7.5, < 2.0.0
|
5
|
-
apprise >= 1.
|
5
|
+
apprise >= 1.1.0, < 2.0.0
|
6
6
|
asyncpg >= 0.23, < 1.0.0
|
7
7
|
click >= 8.0, < 8.2
|
8
8
|
cryptography >= 36.0.1
|
@@ -12,8 +12,7 @@ graphviz >= 0.20.1
|
|
12
12
|
jinja2 >= 3.0.0, < 4.0.0
|
13
13
|
jinja2-humanize-extension >= 0.4.0
|
14
14
|
humanize >= 4.9.0, < 5.0.0
|
15
|
-
kubernetes >= 24.2.0, < 30.0.0
|
16
15
|
pytz >= 2021.1, < 2025
|
17
16
|
readchar >= 4.0.0, < 5.0.0
|
18
|
-
sqlalchemy[asyncio] >=
|
17
|
+
sqlalchemy[asyncio] >= 2.0, < 3.0.0
|
19
18
|
typer >= 0.12.0, != 0.12.2, < 0.13.0
|
@@ -1,4 +1,5 @@
|
|
1
1
|
[tool:pytest]
|
2
|
+
testpaths = tests
|
2
3
|
addopts = -rfEs
|
3
4
|
norecursedirs = *.egg-info .git .mypy_cache node_modules .pytest_cache .vscode
|
4
5
|
python_files =
|
@@ -18,15 +19,9 @@ asyncio_mode = auto
|
|
18
19
|
timeout = 90
|
19
20
|
filterwarnings =
|
20
21
|
error
|
22
|
+
|
21
23
|
ignore::DeprecationWarning:tornado.platform.asyncio.*
|
22
24
|
ignore::DeprecationWarning:tornado.ioloop
|
23
|
-
ignore:Support for class-based `config` is deprecated
|
24
|
-
ignore:The `__fields__` attribute is deprecated
|
25
|
-
ignore:The private method `_iter` will be removed
|
26
|
-
ignore:The `__fields_set__` attribute is deprecated, use `model_fields_set` instead
|
27
|
-
ignore:`__get_validators__` is deprecated and will be removed, use `__get_pydantic_core_schema__`
|
28
|
-
ignore:The `dict` method is deprecated; use `model_dump` instead
|
29
|
-
ignore:The `schema` method is deprecated; use `model_json_schema` instead
|
30
25
|
ignore:Default value default=
|
31
26
|
ignore:Implicitly cleaning up:ResourceWarning
|
32
27
|
ignore::ResourceWarning:distributed.diskutils
|
@@ -40,7 +35,6 @@ filterwarnings =
|
|
40
35
|
ignore:the imp module is deprecated:DeprecationWarning
|
41
36
|
ignore:distutils Version classes are deprecated:DeprecationWarning
|
42
37
|
ignore:The distutils package is deprecated:DeprecationWarning
|
43
|
-
ignore:Use setlocale:DeprecationWarning
|
44
38
|
ignore:Skipped unsupported reflection of expression-based index:sqlalchemy.exc.SAWarning
|
45
39
|
ignore:The --rsyncdir command line argument and rsyncdirs config variable are deprecated.:DeprecationWarning
|
46
40
|
ignore:Prefect will drop support for Python 3.7:FutureWarning
|
@@ -52,7 +46,6 @@ filterwarnings =
|
|
52
46
|
ignore::ResourceWarning
|
53
47
|
ignore::pytest.PytestUnraisableExceptionWarning
|
54
48
|
ignore::pluggy.PluggyTeardownRaisedWarning
|
55
|
-
ignore::prefect._internal.compatibility.deprecated.PrefectDeprecationWarning
|
56
49
|
|
57
50
|
[mypy]
|
58
51
|
plugins =
|
@@ -68,7 +61,7 @@ VCS = git
|
|
68
61
|
style = pep440
|
69
62
|
versionfile_source = src/prefect/_version.py
|
70
63
|
versionfile_build = prefect/_version.py
|
71
|
-
version_regex = ^(\d+\.\d+\.\d+)$
|
64
|
+
version_regex = ^(\d+\.\d+\.\d+(?:[a-zA-Z0-9]+(?:\.[a-zA-Z0-9]+)*)?)$
|
72
65
|
tag_prefix =
|
73
66
|
parentdir_prefix =
|
74
67
|
|
@@ -89,8 +82,8 @@ backports =
|
|
89
82
|
format = parsable
|
90
83
|
eval_annotations = yes
|
91
84
|
only_show_violations = yes
|
92
|
-
targets = 3.
|
93
|
-
exclusion_regex = ^src/prefect/_vendor/.*$|^src/prefect/utilities/compat\.py
|
85
|
+
targets = 3.9-
|
86
|
+
exclusion_regex = ^src/prefect/_vendor/.*$|^src/prefect/utilities/compat\.py$|^tests/workers/test_process_worker.py$|^tests/test_background_tasks.py$|^src/integrations/.*/tests/.*$
|
94
87
|
|
95
88
|
[egg_info]
|
96
89
|
tag_build =
|
@@ -15,7 +15,7 @@ setup(
|
|
15
15
|
author_email="help@prefect.io",
|
16
16
|
url="https://www.prefect.io",
|
17
17
|
project_urls={
|
18
|
-
"Changelog": "https://github.com/PrefectHQ/prefect/
|
18
|
+
"Changelog": "https://github.com/PrefectHQ/prefect/releases",
|
19
19
|
"Documentation": "https://docs.prefect.io",
|
20
20
|
"Source": "https://github.com/PrefectHQ/prefect",
|
21
21
|
"Tracker": "https://github.com/PrefectHQ/prefect/issues",
|
@@ -29,7 +29,7 @@ setup(
|
|
29
29
|
package_dir={"": "src"},
|
30
30
|
include_package_data=True,
|
31
31
|
# Requirements
|
32
|
-
python_requires=">=3.
|
32
|
+
python_requires=">=3.9",
|
33
33
|
install_requires=install_requires,
|
34
34
|
extras_require={"notifications": ["apprise>=1.1.0, <2.0.0"]},
|
35
35
|
classifiers=[
|
@@ -38,10 +38,10 @@ setup(
|
|
38
38
|
"Intended Audience :: System Administrators",
|
39
39
|
"License :: OSI Approved :: Apache Software License",
|
40
40
|
"Programming Language :: Python :: 3 :: Only",
|
41
|
-
"Programming Language :: Python :: 3.8",
|
42
41
|
"Programming Language :: Python :: 3.9",
|
43
42
|
"Programming Language :: Python :: 3.10",
|
44
43
|
"Programming Language :: Python :: 3.11",
|
44
|
+
"Programming Language :: Python :: 3.12",
|
45
45
|
"Topic :: Software Development :: Libraries",
|
46
46
|
],
|
47
47
|
)
|
@@ -0,0 +1,118 @@
|
|
1
|
+
# isort: skip_file
|
2
|
+
|
3
|
+
# Setup version and path constants
|
4
|
+
|
5
|
+
from . import _version
|
6
|
+
import importlib
|
7
|
+
import pathlib
|
8
|
+
from typing import TYPE_CHECKING, Any
|
9
|
+
|
10
|
+
__version_info__ = _version.get_versions()
|
11
|
+
__version__ = __version_info__["version"]
|
12
|
+
|
13
|
+
# The absolute path to this module
|
14
|
+
__module_path__ = pathlib.Path(__file__).parent
|
15
|
+
# The absolute path to the root of the repository, only valid for use during development
|
16
|
+
__development_base_path__ = __module_path__.parents[1]
|
17
|
+
|
18
|
+
# The absolute path to the built UI within the Python module, used by
|
19
|
+
# `prefect server start` to serve a dynamic build of the UI
|
20
|
+
__ui_static_subpath__ = __module_path__ / "server" / "ui_build"
|
21
|
+
|
22
|
+
# The absolute path to the built UI within the Python module
|
23
|
+
__ui_static_path__ = __module_path__ / "server" / "ui"
|
24
|
+
|
25
|
+
del _version, pathlib
|
26
|
+
|
27
|
+
if TYPE_CHECKING:
|
28
|
+
from .main import (
|
29
|
+
allow_failure,
|
30
|
+
flow,
|
31
|
+
Flow,
|
32
|
+
get_client,
|
33
|
+
get_run_logger,
|
34
|
+
State,
|
35
|
+
tags,
|
36
|
+
task,
|
37
|
+
Task,
|
38
|
+
Transaction,
|
39
|
+
unmapped,
|
40
|
+
serve,
|
41
|
+
deploy,
|
42
|
+
pause_flow_run,
|
43
|
+
resume_flow_run,
|
44
|
+
suspend_flow_run,
|
45
|
+
)
|
46
|
+
|
47
|
+
_slots: dict[str, Any] = {
|
48
|
+
"__version_info__": __version_info__,
|
49
|
+
"__version__": __version__,
|
50
|
+
"__module_path__": __module_path__,
|
51
|
+
"__development_base_path__": __development_base_path__,
|
52
|
+
"__ui_static_subpath__": __ui_static_subpath__,
|
53
|
+
"__ui_static_path__": __ui_static_path__,
|
54
|
+
}
|
55
|
+
|
56
|
+
_public_api: dict[str, tuple[str, str]] = {
|
57
|
+
"allow_failure": (__spec__.parent, ".main"),
|
58
|
+
"flow": (__spec__.parent, ".main"),
|
59
|
+
"Flow": (__spec__.parent, ".main"),
|
60
|
+
"get_client": (__spec__.parent, ".main"),
|
61
|
+
"get_run_logger": (__spec__.parent, ".main"),
|
62
|
+
"State": (__spec__.parent, ".main"),
|
63
|
+
"tags": (__spec__.parent, ".main"),
|
64
|
+
"task": (__spec__.parent, ".main"),
|
65
|
+
"Task": (__spec__.parent, ".main"),
|
66
|
+
"Transaction": (__spec__.parent, ".main"),
|
67
|
+
"unmapped": (__spec__.parent, ".main"),
|
68
|
+
"serve": (__spec__.parent, ".main"),
|
69
|
+
"deploy": (__spec__.parent, ".main"),
|
70
|
+
"pause_flow_run": (__spec__.parent, ".main"),
|
71
|
+
"resume_flow_run": (__spec__.parent, ".main"),
|
72
|
+
"suspend_flow_run": (__spec__.parent, ".main"),
|
73
|
+
}
|
74
|
+
|
75
|
+
# Declare API for type-checkers
|
76
|
+
__all__ = [
|
77
|
+
"allow_failure",
|
78
|
+
"flow",
|
79
|
+
"Flow",
|
80
|
+
"get_client",
|
81
|
+
"get_run_logger",
|
82
|
+
"State",
|
83
|
+
"tags",
|
84
|
+
"task",
|
85
|
+
"Task",
|
86
|
+
"Transaction",
|
87
|
+
"unmapped",
|
88
|
+
"serve",
|
89
|
+
"deploy",
|
90
|
+
"pause_flow_run",
|
91
|
+
"resume_flow_run",
|
92
|
+
"suspend_flow_run",
|
93
|
+
"__version_info__",
|
94
|
+
"__version__",
|
95
|
+
"__module_path__",
|
96
|
+
"__development_base_path__",
|
97
|
+
"__ui_static_subpath__",
|
98
|
+
"__ui_static_path__",
|
99
|
+
]
|
100
|
+
|
101
|
+
|
102
|
+
def __getattr__(attr_name: str) -> object:
|
103
|
+
if attr_name in _slots:
|
104
|
+
return _slots[attr_name]
|
105
|
+
|
106
|
+
dynamic_attr = _public_api.get(attr_name)
|
107
|
+
if dynamic_attr is None:
|
108
|
+
return importlib.import_module(f".{attr_name}", package=__name__)
|
109
|
+
|
110
|
+
package, module_name = dynamic_attr
|
111
|
+
|
112
|
+
from importlib import import_module
|
113
|
+
|
114
|
+
if module_name == "__module__":
|
115
|
+
return import_module(f".{attr_name}", package=package)
|
116
|
+
else:
|
117
|
+
module = import_module(module_name, package=package)
|
118
|
+
return getattr(module, attr_name)
|
{prefect_client-2.20.4 → prefect-client-3.0.0}/src/prefect/_internal/compatibility/deprecated.py
RENAMED
@@ -9,21 +9,14 @@ Deprecated items require a start or end date. If a start date is given, the end
|
|
9
9
|
will be calculated 6 months later. Start and end dates are always in the format MMM YYYY
|
10
10
|
e.g. Jan 2023.
|
11
11
|
"""
|
12
|
+
|
12
13
|
import functools
|
13
14
|
import sys
|
14
15
|
import warnings
|
15
|
-
from typing import Any, Callable,
|
16
|
+
from typing import Any, Callable, List, Optional, Type, TypeVar
|
16
17
|
|
17
18
|
import pendulum
|
18
|
-
|
19
|
-
from prefect._internal.pydantic import HAS_PYDANTIC_V2
|
20
|
-
|
21
|
-
if HAS_PYDANTIC_V2:
|
22
|
-
from pydantic.v1 import BaseModel, Field, root_validator
|
23
|
-
from pydantic.v1.schema import default_ref_template
|
24
|
-
else:
|
25
|
-
from pydantic import BaseModel, Field, root_validator
|
26
|
-
from pydantic.schema import default_ref_template
|
19
|
+
from pydantic import BaseModel
|
27
20
|
|
28
21
|
from prefect.utilities.callables import get_call_parameters
|
29
22
|
from prefect.utilities.importtools import (
|
@@ -237,9 +230,10 @@ def deprecated_field(
|
|
237
230
|
|
238
231
|
cls_init(__pydantic_self__, **data)
|
239
232
|
|
240
|
-
field = __pydantic_self__.
|
233
|
+
field = __pydantic_self__.model_fields.get(name)
|
241
234
|
if field is not None:
|
242
|
-
field.
|
235
|
+
field.json_schema_extra = field.json_schema_extra or {}
|
236
|
+
field.json_schema_extra["deprecated"] = True
|
243
237
|
|
244
238
|
# Patch the model's init method
|
245
239
|
model_cls.__init__ = __init__
|
@@ -278,106 +272,3 @@ def register_renamed_module(old_name: str, new_name: str, start_date: str):
|
|
278
272
|
DEPRECATED_MODULE_ALIASES.append(
|
279
273
|
AliasedModuleDefinition(old_name, new_name, callback)
|
280
274
|
)
|
281
|
-
|
282
|
-
|
283
|
-
class DeprecatedInfraOverridesField(BaseModel):
|
284
|
-
"""
|
285
|
-
A model mixin that handles the deprecated `infra_overrides` field.
|
286
|
-
|
287
|
-
The `infra_overrides` field has been renamed to `job_variables`. This mixin maintains
|
288
|
-
backwards compatibility with users of the `infra_overrides` field while presenting
|
289
|
-
`job_variables` as the user-facing field.
|
290
|
-
|
291
|
-
When we remove support for `infra_overrides`, we can remove this class as a parent of
|
292
|
-
all schemas that use it, leaving them with only the `job_variables` field.
|
293
|
-
"""
|
294
|
-
|
295
|
-
infra_overrides: Optional[Dict[str, Any]] = Field(
|
296
|
-
default_factory=dict,
|
297
|
-
description="Deprecated field. Use `job_variables` instead.",
|
298
|
-
)
|
299
|
-
|
300
|
-
@root_validator(pre=True)
|
301
|
-
def _job_variables_from_infra_overrides(
|
302
|
-
cls, values: Dict[str, Any]
|
303
|
-
) -> Dict[str, Any]:
|
304
|
-
"""
|
305
|
-
Validate that only one of `infra_overrides` or `job_variables` is used
|
306
|
-
and keep them in sync during init.
|
307
|
-
"""
|
308
|
-
job_variables = values.get("job_variables")
|
309
|
-
infra_overrides = values.get("infra_overrides")
|
310
|
-
|
311
|
-
if job_variables is not None and infra_overrides is not None:
|
312
|
-
if job_variables != infra_overrides:
|
313
|
-
raise ValueError(
|
314
|
-
"The `infra_overrides` field has been renamed to `job_variables`."
|
315
|
-
"Use one of these fields, but not both."
|
316
|
-
)
|
317
|
-
return values
|
318
|
-
elif job_variables is not None and infra_overrides is None:
|
319
|
-
values["infra_overrides"] = job_variables
|
320
|
-
elif job_variables is None and infra_overrides is not None:
|
321
|
-
values["job_variables"] = infra_overrides
|
322
|
-
return values
|
323
|
-
|
324
|
-
def __setattr__(self, key: str, value: Any) -> None:
|
325
|
-
"""
|
326
|
-
Override the default __setattr__ to ensure that setting `infra_overrides` or
|
327
|
-
`job_variables` will update both fields.
|
328
|
-
"""
|
329
|
-
if key == "infra_overrides" or key == "job_variables":
|
330
|
-
updates = {"infra_overrides": value, "job_variables": value}
|
331
|
-
self.__dict__.update(updates)
|
332
|
-
return
|
333
|
-
super().__setattr__(key, value)
|
334
|
-
|
335
|
-
def dict(self, **kwargs) -> Dict[str, Any]:
|
336
|
-
"""
|
337
|
-
Override the default dict method to ensure only `infra_overrides` is serialized.
|
338
|
-
This preserves backwards compatibility for newer clients talking to older servers.
|
339
|
-
"""
|
340
|
-
exclude: Union[set, Dict[str, Any]] = kwargs.pop("exclude", set())
|
341
|
-
exclude_type = type(exclude)
|
342
|
-
|
343
|
-
if exclude_type is set:
|
344
|
-
exclude.add("job_variables")
|
345
|
-
elif exclude_type is dict:
|
346
|
-
exclude["job_variables"] = True
|
347
|
-
else:
|
348
|
-
exclude = {"job_variables"}
|
349
|
-
kwargs["exclude"] = exclude
|
350
|
-
|
351
|
-
return super().dict(**kwargs)
|
352
|
-
|
353
|
-
@classmethod
|
354
|
-
def schema(
|
355
|
-
cls, by_alias: bool = True, ref_template: str = default_ref_template
|
356
|
-
) -> Dict[str, Any]:
|
357
|
-
"""
|
358
|
-
Don't use the mixin docstring as the description if this class is missing a
|
359
|
-
docstring.
|
360
|
-
"""
|
361
|
-
schema = super().schema(by_alias=by_alias, ref_template=ref_template)
|
362
|
-
|
363
|
-
if not cls.__doc__:
|
364
|
-
schema.pop("description", None)
|
365
|
-
|
366
|
-
return schema
|
367
|
-
|
368
|
-
|
369
|
-
def handle_deprecated_infra_overrides_parameter(
|
370
|
-
job_variables: Dict[str, Any], infra_overrides: Dict[str, Any]
|
371
|
-
) -> Optional[Dict[str, Any]]:
|
372
|
-
if infra_overrides is not None and job_variables is not None:
|
373
|
-
raise RuntimeError(
|
374
|
-
"The `infra_overrides` argument has been renamed to `job_variables`."
|
375
|
-
"Use one or the other, but not both."
|
376
|
-
)
|
377
|
-
elif infra_overrides is not None and job_variables is None:
|
378
|
-
jv = infra_overrides
|
379
|
-
elif job_variables is not None and infra_overrides is None:
|
380
|
-
jv = job_variables
|
381
|
-
else:
|
382
|
-
jv = None
|
383
|
-
return jv
|