prefect-client 3.4.8.dev6__tar.gz → 3.4.8.dev8__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-3.4.8.dev6 → prefect_client-3.4.8.dev8}/PKG-INFO +1 -1
- prefect_client-3.4.8.dev8/src/prefect/_build_info.py +5 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/websockets.py +35 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/base.py +35 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/cli/automations.py +94 -1
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/client.py +12 -1
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/engine.py +1 -0
- prefect_client-3.4.8.dev6/src/prefect/_build_info.py +0 -5
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/.gitignore +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/LICENSE +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/README.md +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/pyproject.toml +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/.prefectignore +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/AGENTS.md +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/__main__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/bundles/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/bundles/execute.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/lineage.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/sla/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/sla/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/sla/objects.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/_logging.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/compatibility/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/compatibility/async_dispatch.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/compatibility/blocks.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/compatibility/deprecated.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/compatibility/migration.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/api.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/calls.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/cancellation.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/event_loop.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/inspection.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/primitives.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/services.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/threads.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/waiters.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/integrations.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/pydantic/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/pydantic/schemas.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/pydantic/v1_schema.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/pydantic/v2_schema.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/pydantic/v2_validated_func.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/pytz.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/retries.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/schemas/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/schemas/bases.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/schemas/fields.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/schemas/serializers.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/schemas/validators.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/uuid7.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_result_records.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_vendor/croniter/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_vendor/croniter/croniter.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_versioning.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_waiters.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/agent.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/artifacts.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/assets/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/assets/core.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/assets/materialize.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/automations.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/blocks/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/blocks/abstract.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/blocks/core.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/blocks/fields.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/blocks/notifications.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/blocks/redis.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/blocks/system.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/blocks/webhook.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/cache_policies.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/cloud.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/collections.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/constants.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_artifacts/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_artifacts/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_automations/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_automations/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_blocks_documents/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_blocks_documents/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_blocks_schemas/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_blocks_schemas/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_blocks_types/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_blocks_types/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_concurrency_limits/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_concurrency_limits/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_deployments/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_deployments/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_flow_runs/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_flow_runs/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_flows/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_flows/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_logs/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_logs/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_variables/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_variables/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_work_pools/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/_work_pools/client.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/base.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/routes.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/actions.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/filters.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/objects.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/responses.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/schedules.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/sorting.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/subscriptions.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/types/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/types/flexible_schedule_list.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/utilities.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/_asyncio.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/_events.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/asyncio.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/context.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/services.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/sync.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/_asyncio.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/_events.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/asyncio.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/context.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/services.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/sync.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/context.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/base.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/deployments.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/flow_runs.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/runner.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/schedules.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/steps/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/steps/core.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/steps/pull.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/steps/utility.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/docker/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/docker/docker_image.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/engine.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/actions.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/cli/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/clients.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/filters.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/related.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/schemas/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/schemas/automations.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/schemas/deployment_triggers.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/schemas/events.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/schemas/labelling.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/utilities.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/worker.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/exceptions.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/filesystems.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/flow_engine.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/flow_runs.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/flows.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/futures.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/infrastructure/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/infrastructure/base.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/infrastructure/provisioners/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/infrastructure/provisioners/cloud_run.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/infrastructure/provisioners/coiled.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/infrastructure/provisioners/container_instance.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/infrastructure/provisioners/ecs.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/infrastructure/provisioners/modal.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/input/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/input/actions.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/input/run_input.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/locking/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/locking/filesystem.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/locking/memory.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/locking/protocol.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/logging/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/logging/clients.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/logging/configuration.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/logging/filters.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/logging/formatters.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/logging/handlers.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/logging/highlighters.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/logging/loggers.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/logging/logging.yml +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/main.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/plugins.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/py.typed +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/results.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/runner/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/runner/_observers.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/runner/runner.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/runner/server.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/runner/storage.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/runner/submit.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/runner/utils.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/runtime/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/runtime/deployment.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/runtime/flow_run.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/runtime/task_run.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/schedules.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/serializers.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/admin.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/artifacts.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/automations.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/block_capabilities.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/block_documents.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/block_schemas.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/block_types.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/clients.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/collections.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/collections_data/views/aggregate-worker-metadata.json +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/concurrency_limits.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/concurrency_limits_v2.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/csrf_token.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/dependencies.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/deployments.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/events.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/flow_run_states.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/flow_runs.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/flows.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/logs.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/middleware.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/root.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/run_history.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/saved_searches.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/server.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/static/prefect-logo-mark-gradient.png +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/task_run_states.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/task_runs.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/task_workers.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/templates.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/ui/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/ui/flow_runs.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/ui/flows.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/ui/schemas.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/ui/task_runs.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/validation.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/variables.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/work_queues.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/server/api/workers.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/base.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/constants.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/context.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/legacy.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/_defaults.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/api.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/cli.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/cloud.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/deployments.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/experiments.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/flows.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/internal.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/logging.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/results.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/root.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/runner.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/server/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/server/api.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/server/database.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/server/deployments.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/server/ephemeral.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/server/events.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/server/flow_run_graph.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/server/logs.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/server/root.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/server/services.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/server/tasks.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/server/ui.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/tasks.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/testing.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/worker.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/profiles.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/profiles.toml +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/sources.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/states.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/task_engine.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/task_runners.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/task_runs.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/task_worker.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/tasks.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/telemetry/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/telemetry/bootstrap.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/telemetry/instrumentation.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/telemetry/logging.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/telemetry/processors.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/telemetry/run_telemetry.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/telemetry/services.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/transactions.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/types/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/types/_datetime.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/types/entrypoint.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/types/names.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/_ast.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/_deprecated.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/_engine.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/_git.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/annotations.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/asyncutils.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/callables.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/collections.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/compat.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/context.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/dispatch.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/dockerutils.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/filesystem.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/generics.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/hashing.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/importtools.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/math.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/names.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/processutils.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/pydantic.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/render_swagger.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/schema_tools/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/schema_tools/hydration.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/schema_tools/validation.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/services.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/slugify.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/templating.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/text.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/timeout.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/urls.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/utilities/visualization.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/variables.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/workers/__init__.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/workers/base.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/workers/block.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/workers/cloud.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/workers/process.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/workers/server.py +0 -0
- {prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/workers/utilities.py +0 -0
|
@@ -7,6 +7,7 @@ to avoid duplication between events and logs clients.
|
|
|
7
7
|
|
|
8
8
|
import os
|
|
9
9
|
import ssl
|
|
10
|
+
import warnings
|
|
10
11
|
from typing import Any, Generator, Optional
|
|
11
12
|
from urllib.parse import urlparse
|
|
12
13
|
from urllib.request import proxy_bypass
|
|
@@ -86,6 +87,40 @@ class WebsocketProxyConnect(connect):
|
|
|
86
87
|
if ssl_context:
|
|
87
88
|
self._kwargs.setdefault("ssl", ssl_context)
|
|
88
89
|
|
|
90
|
+
# Add custom headers from settings
|
|
91
|
+
custom_headers = get_current_settings().client.custom_headers
|
|
92
|
+
if custom_headers:
|
|
93
|
+
# Get existing extra_headers or create new dict
|
|
94
|
+
extra_headers = self._kwargs.get("extra_headers", {})
|
|
95
|
+
if not isinstance(extra_headers, dict):
|
|
96
|
+
extra_headers = {}
|
|
97
|
+
|
|
98
|
+
for header_name, header_value in custom_headers.items():
|
|
99
|
+
# Check for protected headers that shouldn't be overridden
|
|
100
|
+
if header_name.lower() in {
|
|
101
|
+
"user-agent",
|
|
102
|
+
"sec-websocket-key",
|
|
103
|
+
"sec-websocket-version",
|
|
104
|
+
"sec-websocket-extensions",
|
|
105
|
+
"sec-websocket-protocol",
|
|
106
|
+
"connection",
|
|
107
|
+
"upgrade",
|
|
108
|
+
"host",
|
|
109
|
+
}:
|
|
110
|
+
warnings.warn(
|
|
111
|
+
f"Custom header '{header_name}' is ignored because it conflicts with "
|
|
112
|
+
f"a protected WebSocket header. Protected headers include: "
|
|
113
|
+
f"User-Agent, Sec-WebSocket-Key, Sec-WebSocket-Version, "
|
|
114
|
+
f"Sec-WebSocket-Extensions, Sec-WebSocket-Protocol, Connection, "
|
|
115
|
+
f"Upgrade, Host",
|
|
116
|
+
UserWarning,
|
|
117
|
+
stacklevel=2,
|
|
118
|
+
)
|
|
119
|
+
else:
|
|
120
|
+
extra_headers[header_name] = header_value
|
|
121
|
+
|
|
122
|
+
self._kwargs["extra_headers"] = extra_headers
|
|
123
|
+
|
|
89
124
|
async def _proxy_connect(self: Self) -> ClientConnection:
|
|
90
125
|
if self._proxy_url:
|
|
91
126
|
# Create proxy in the current event loop context
|
|
@@ -29,6 +29,7 @@ from prefect.settings import (
|
|
|
29
29
|
PREFECT_CLIENT_RETRY_JITTER_FACTOR,
|
|
30
30
|
PREFECT_CLOUD_API_URL,
|
|
31
31
|
PREFECT_SERVER_ALLOW_EPHEMERAL_MODE,
|
|
32
|
+
get_current_settings,
|
|
32
33
|
)
|
|
33
34
|
from prefect.utilities.collections import AutoEnum
|
|
34
35
|
from prefect.utilities.math import bounded_poisson_interval, clamped_poisson_interval
|
|
@@ -206,6 +207,23 @@ class PrefectHttpxAsyncClient(httpx.AsyncClient):
|
|
|
206
207
|
)
|
|
207
208
|
self.headers["User-Agent"] = user_agent
|
|
208
209
|
|
|
210
|
+
# Add custom headers from settings
|
|
211
|
+
custom_headers = get_current_settings().client.custom_headers
|
|
212
|
+
for header_name, header_value in custom_headers.items():
|
|
213
|
+
# Prevent overriding critical headers
|
|
214
|
+
if header_name.lower() in {
|
|
215
|
+
"user-agent",
|
|
216
|
+
"prefect-csrf-token",
|
|
217
|
+
"prefect-csrf-client",
|
|
218
|
+
}:
|
|
219
|
+
logger.warning(
|
|
220
|
+
f"Custom header '{header_name}' is ignored because it conflicts with "
|
|
221
|
+
f"a protected header managed by Prefect. Protected headers include: "
|
|
222
|
+
f"User-Agent, Prefect-Csrf-Token, Prefect-Csrf-Client"
|
|
223
|
+
)
|
|
224
|
+
else:
|
|
225
|
+
self.headers[header_name] = header_value
|
|
226
|
+
|
|
209
227
|
async def _send_with_retry(
|
|
210
228
|
self,
|
|
211
229
|
request: Request,
|
|
@@ -432,6 +450,23 @@ class PrefectHttpxSyncClient(httpx.Client):
|
|
|
432
450
|
)
|
|
433
451
|
self.headers["User-Agent"] = user_agent
|
|
434
452
|
|
|
453
|
+
# Add custom headers from settings
|
|
454
|
+
custom_headers = get_current_settings().client.custom_headers
|
|
455
|
+
for header_name, header_value in custom_headers.items():
|
|
456
|
+
# Prevent overriding critical headers
|
|
457
|
+
if header_name.lower() in {
|
|
458
|
+
"user-agent",
|
|
459
|
+
"prefect-csrf-token",
|
|
460
|
+
"prefect-csrf-client",
|
|
461
|
+
}:
|
|
462
|
+
logger.warning(
|
|
463
|
+
f"Custom header '{header_name}' is ignored because it conflicts with "
|
|
464
|
+
f"a protected header managed by Prefect. Protected headers include: "
|
|
465
|
+
f"User-Agent, Prefect-Csrf-Token, Prefect-Csrf-Client"
|
|
466
|
+
)
|
|
467
|
+
else:
|
|
468
|
+
self.headers[header_name] = header_value
|
|
469
|
+
|
|
435
470
|
def _send_with_retry(
|
|
436
471
|
self,
|
|
437
472
|
request: Request,
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/events/cli/automations.py
RENAMED
|
@@ -3,6 +3,7 @@ Command line interface for working with automations.
|
|
|
3
3
|
"""
|
|
4
4
|
|
|
5
5
|
import functools
|
|
6
|
+
from pathlib import Path
|
|
6
7
|
from typing import Any, Callable, Optional, Type
|
|
7
8
|
from uuid import UUID
|
|
8
9
|
|
|
@@ -18,7 +19,7 @@ from prefect.cli._types import PrefectTyper
|
|
|
18
19
|
from prefect.cli._utilities import exit_with_error, exit_with_success
|
|
19
20
|
from prefect.cli.root import app, is_interactive
|
|
20
21
|
from prefect.client.orchestration import get_client
|
|
21
|
-
from prefect.events.schemas.automations import Automation
|
|
22
|
+
from prefect.events.schemas.automations import Automation, AutomationCore
|
|
22
23
|
from prefect.exceptions import PrefectHTTPStatusError
|
|
23
24
|
|
|
24
25
|
automations_app: PrefectTyper = PrefectTyper(
|
|
@@ -345,3 +346,95 @@ async def delete(
|
|
|
345
346
|
exit_with_error("Deletion aborted.")
|
|
346
347
|
await client.delete_automation(automation[0].id)
|
|
347
348
|
exit_with_success(f"Deleted automation with name {name!r}")
|
|
349
|
+
|
|
350
|
+
|
|
351
|
+
@automations_app.command()
|
|
352
|
+
@requires_automations
|
|
353
|
+
async def create(
|
|
354
|
+
from_file: Optional[str] = typer.Option(
|
|
355
|
+
None,
|
|
356
|
+
"--from-file",
|
|
357
|
+
"-f",
|
|
358
|
+
help="Path to YAML or JSON file containing automation(s)",
|
|
359
|
+
),
|
|
360
|
+
from_json: Optional[str] = typer.Option(
|
|
361
|
+
None,
|
|
362
|
+
"--from-json",
|
|
363
|
+
"-j",
|
|
364
|
+
help="JSON string containing automation(s)",
|
|
365
|
+
),
|
|
366
|
+
):
|
|
367
|
+
"""Create one or more automations from a file or JSON string.
|
|
368
|
+
|
|
369
|
+
Examples:
|
|
370
|
+
$ prefect automation create --from-file automation.yaml
|
|
371
|
+
$ prefect automation create -f automation.json
|
|
372
|
+
$ prefect automation create --from-json '{"name": "my-automation", "trigger": {...}, "actions": [...]}'
|
|
373
|
+
$ prefect automation create -j '[{"name": "auto1", ...}, {"name": "auto2", ...}]'
|
|
374
|
+
"""
|
|
375
|
+
if from_file and from_json:
|
|
376
|
+
exit_with_error("Please provide either --from-file or --from-json, not both.")
|
|
377
|
+
|
|
378
|
+
if not from_file and not from_json:
|
|
379
|
+
exit_with_error("Please provide either --from-file or --from-json.")
|
|
380
|
+
|
|
381
|
+
if from_file:
|
|
382
|
+
file_path = Path(from_file)
|
|
383
|
+
if not file_path.exists():
|
|
384
|
+
exit_with_error(f"File not found: {from_file}")
|
|
385
|
+
|
|
386
|
+
with open(file_path, "r") as f:
|
|
387
|
+
content = f.read()
|
|
388
|
+
|
|
389
|
+
if file_path.suffix.lower() in [".yaml", ".yml"]:
|
|
390
|
+
data = pyyaml.safe_load(content)
|
|
391
|
+
elif file_path.suffix.lower() == ".json":
|
|
392
|
+
data = orjson.loads(content)
|
|
393
|
+
else:
|
|
394
|
+
exit_with_error(
|
|
395
|
+
"File extension not recognized. Please use .yaml, .yml, or .json"
|
|
396
|
+
)
|
|
397
|
+
else: # from_json
|
|
398
|
+
try:
|
|
399
|
+
data = orjson.loads(from_json)
|
|
400
|
+
except orjson.JSONDecodeError as e:
|
|
401
|
+
exit_with_error(f"Invalid JSON: {e}")
|
|
402
|
+
|
|
403
|
+
automations_data = []
|
|
404
|
+
if isinstance(data, dict) and "automations" in data:
|
|
405
|
+
automations_data = data["automations"]
|
|
406
|
+
elif isinstance(data, list):
|
|
407
|
+
automations_data = data
|
|
408
|
+
else:
|
|
409
|
+
automations_data = [data]
|
|
410
|
+
|
|
411
|
+
created = []
|
|
412
|
+
failed = []
|
|
413
|
+
async with get_client() as client:
|
|
414
|
+
for i, automation_data in enumerate(automations_data):
|
|
415
|
+
try:
|
|
416
|
+
automation = AutomationCore.model_validate(automation_data)
|
|
417
|
+
automation_id = await client.create_automation(automation)
|
|
418
|
+
created.append((automation.name, automation_id))
|
|
419
|
+
except Exception as e:
|
|
420
|
+
name = automation_data.get("name", f"automation at index {i}")
|
|
421
|
+
failed.append((name, str(e)))
|
|
422
|
+
|
|
423
|
+
if failed:
|
|
424
|
+
app.console.print(f"[red]Failed to create {len(failed)} automation(s):[/red]")
|
|
425
|
+
for name, error in failed:
|
|
426
|
+
app.console.print(f" - {name}: {error}")
|
|
427
|
+
|
|
428
|
+
if created:
|
|
429
|
+
if len(created) == 1 and not failed:
|
|
430
|
+
name, automation_id = created[0]
|
|
431
|
+
exit_with_success(f"Created automation '{name}' with id {automation_id}")
|
|
432
|
+
else:
|
|
433
|
+
app.console.print(f"[green]Created {len(created)} automation(s):[/green]")
|
|
434
|
+
for name, automation_id in created:
|
|
435
|
+
app.console.print(f" - '{name}' with id {automation_id}")
|
|
436
|
+
|
|
437
|
+
if failed:
|
|
438
|
+
raise typer.Exit(1)
|
|
439
|
+
else:
|
|
440
|
+
raise typer.Exit(0)
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/settings/models/client.py
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
from typing import ClassVar
|
|
1
|
+
from typing import ClassVar, Dict
|
|
2
2
|
|
|
3
3
|
from pydantic import AliasChoices, AliasPath, Field
|
|
4
4
|
from pydantic_settings import SettingsConfigDict
|
|
@@ -87,6 +87,17 @@ class ClientSettings(PrefectBaseSettings):
|
|
|
87
87
|
""",
|
|
88
88
|
)
|
|
89
89
|
|
|
90
|
+
# this needs to be typing.Dict for now as dict[str, str] is not compatible with pydantic < 2.11
|
|
91
|
+
custom_headers: Dict[str, str] = Field(
|
|
92
|
+
default_factory=dict,
|
|
93
|
+
description="""
|
|
94
|
+
Custom HTTP headers to include with every API request to the Prefect server.
|
|
95
|
+
Headers are specified as key-value pairs. Note that headers like 'User-Agent'
|
|
96
|
+
and CSRF-related headers are managed by Prefect and cannot be overridden.
|
|
97
|
+
""",
|
|
98
|
+
examples=[{"X-Custom-Header": "value"}, {"Authorization": "Bearer token"}],
|
|
99
|
+
)
|
|
100
|
+
|
|
90
101
|
metrics: ClientMetricsSettings = Field(
|
|
91
102
|
default_factory=ClientMetricsSettings,
|
|
92
103
|
description="Settings for controlling metrics reporting from the client",
|
|
@@ -690,6 +690,7 @@ def emit_task_run_state_change_event(
|
|
|
690
690
|
resource={
|
|
691
691
|
"prefect.resource.id": f"prefect.task-run.{task_run.id}",
|
|
692
692
|
"prefect.resource.name": task_run.name,
|
|
693
|
+
"prefect.run-count": str(task_run.run_count),
|
|
693
694
|
"prefect.state-message": truncated_to(
|
|
694
695
|
state_message_truncation_length, validated_state.message
|
|
695
696
|
),
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/bundles/execute.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/lineage.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/sla/__init__.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/sla/client.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_experimental/sla/objects.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/api.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/calls.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/threads.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/concurrency/waiters.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/integrations.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/pydantic/__init__.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/pydantic/schemas.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/pydantic/v1_schema.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/pydantic/v2_schema.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/schemas/__init__.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/schemas/bases.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/schemas/fields.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/schemas/serializers.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_internal/schemas/validators.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_vendor/croniter/__init__.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/_vendor/croniter/croniter.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/base.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/orchestration/routes.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/__init__.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/actions.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/filters.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/objects.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/responses.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/schedules.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/schemas/sorting.py
RENAMED
|
File without changes
|
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/client/types/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/__init__.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/_asyncio.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/_events.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/asyncio.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/context.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/concurrency/v1/services.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/deployments.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/flow_runs.py
RENAMED
|
File without changes
|
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/schedules.py
RENAMED
|
File without changes
|
{prefect_client-3.4.8.dev6 → prefect_client-3.4.8.dev8}/src/prefect/deployments/steps/__init__.py
RENAMED
|
File without changes
|