prefect-client 3.3.5.dev4__tar.gz → 3.3.6.dev2__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.3.5.dev4 → prefect_client-3.3.6.dev2}/PKG-INFO +2 -2
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/pyproject.toml +1 -1
- prefect_client-3.3.6.dev2/src/prefect/_build_info.py +5 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/cache_policies.py +4 -4
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/context.py +3 -1
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/context.py +1 -3
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/clients.py +1 -1
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/futures.py +54 -21
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runner/runner.py +1 -1
- prefect_client-3.3.6.dev2/src/prefect/utilities/_ast.py +117 -0
- prefect_client-3.3.5.dev4/src/prefect/_build_info.py +0 -5
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/.gitignore +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/LICENSE +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/README.md +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/.prefectignore +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/__main__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/bundles.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/lineage.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/sla/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/sla/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/sla/objects.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/_logging.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/compatibility/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/compatibility/async_dispatch.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/compatibility/deprecated.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/compatibility/migration.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/api.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/calls.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/cancellation.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/event_loop.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/inspection.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/primitives.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/services.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/threads.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/waiters.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/integrations.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/schemas.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/v1_schema.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/v2_schema.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/v2_validated_func.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pytz.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/retries.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/bases.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/fields.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/serializers.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/validators.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_result_records.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_vendor/croniter/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_vendor/croniter/croniter.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_waiters.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/agent.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/artifacts.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/automations.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/abstract.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/core.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/fields.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/notifications.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/redis.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/system.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/blocks/webhook.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/base.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/cloud.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/collections.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/constants.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_artifacts/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_artifacts/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_automations/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_automations/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_blocks_documents/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_blocks_documents/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_blocks_schemas/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_blocks_schemas/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_blocks_types/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_blocks_types/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_concurrency_limits/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_concurrency_limits/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_deployments/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_deployments/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_flow_runs/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_flow_runs/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_flows/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_flows/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_logs/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_logs/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_variables/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_variables/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_work_pools/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/_work_pools/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/base.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/routes.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/actions.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/filters.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/objects.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/responses.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/schedules.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/sorting.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/subscriptions.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/types/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/types/flexible_schedule_list.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/utilities.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/_asyncio.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/_events.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/asyncio.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/services.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/sync.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/_asyncio.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/_events.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/asyncio.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/context.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/services.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/sync.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/base.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/deployments.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/flow_runs.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/runner.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/schedules.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/steps/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/steps/core.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/steps/pull.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/deployments/steps/utility.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/docker/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/docker/docker_image.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/engine.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/actions.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/cli/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/cli/automations.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/filters.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/related.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/schemas/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/schemas/automations.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/schemas/deployment_triggers.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/schemas/events.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/schemas/labelling.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/utilities.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/events/worker.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/exceptions.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/filesystems.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/flow_engine.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/flow_runs.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/flows.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/base.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/provisioners/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/provisioners/cloud_run.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/provisioners/coiled.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/provisioners/container_instance.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/provisioners/ecs.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/infrastructure/provisioners/modal.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/input/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/input/actions.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/input/run_input.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/locking/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/locking/filesystem.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/locking/memory.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/locking/protocol.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/configuration.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/filters.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/formatters.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/handlers.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/highlighters.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/loggers.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/logging/logging.yml +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/main.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/plugins.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/py.typed +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/results.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runner/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runner/server.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runner/storage.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runner/submit.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runner/utils.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runtime/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runtime/deployment.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runtime/flow_run.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/runtime/task_run.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/schedules.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/serializers.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/admin.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/artifacts.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/automations.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/block_capabilities.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/block_documents.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/block_schemas.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/block_types.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/clients.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/collections.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/collections_data/views/aggregate-worker-metadata.json +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/concurrency_limits.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/concurrency_limits_v2.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/csrf_token.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/dependencies.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/deployments.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/events.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/flow_run_notification_policies.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/flow_run_states.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/flow_runs.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/flows.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/logs.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/middleware.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/root.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/run_history.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/saved_searches.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/server.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/static/prefect-logo-mark-gradient.png +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/task_run_states.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/task_runs.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/task_workers.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/templates.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/ui/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/ui/flow_runs.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/ui/flows.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/ui/schemas.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/ui/task_runs.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/validation.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/variables.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/work_queues.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/server/api/workers.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/base.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/constants.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/context.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/legacy.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/api.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/cli.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/client.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/cloud.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/deployments.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/experiments.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/flows.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/internal.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/logging.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/results.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/root.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/runner.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/api.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/database.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/deployments.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/ephemeral.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/events.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/flow_run_graph.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/root.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/services.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/tasks.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/server/ui.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/tasks.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/testing.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/models/worker.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/profiles.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/profiles.toml +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/settings/sources.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/states.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/task_engine.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/task_runners.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/task_runs.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/task_worker.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/tasks.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/bootstrap.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/instrumentation.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/logging.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/processors.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/run_telemetry.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/telemetry/services.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/transactions.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/types/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/types/_datetime.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/types/entrypoint.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/_deprecated.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/_engine.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/_git.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/annotations.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/asyncutils.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/callables.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/collections.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/compat.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/context.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/dispatch.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/dockerutils.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/engine.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/filesystem.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/generics.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/hashing.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/importtools.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/math.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/names.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/processutils.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/pydantic.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/render_swagger.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/schema_tools/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/schema_tools/hydration.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/schema_tools/validation.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/services.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/slugify.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/templating.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/text.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/timeout.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/urls.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/utilities/visualization.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/variables.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/__init__.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/base.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/block.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/cloud.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/process.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/server.py +0 -0
- {prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/workers/utilities.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: prefect-client
|
3
|
-
Version: 3.3.
|
3
|
+
Version: 3.3.6.dev2
|
4
4
|
Summary: Workflow orchestration and management.
|
5
5
|
Project-URL: Changelog, https://github.com/PrefectHQ/prefect/releases
|
6
6
|
Project-URL: Documentation, https://docs.prefect.io
|
@@ -47,7 +47,7 @@ Requires-Dist: prometheus-client>=0.20.0
|
|
47
47
|
Requires-Dist: pydantic!=2.10.0,<3.0.0,>=2.9
|
48
48
|
Requires-Dist: pydantic-core<3.0.0,>=2.12.0
|
49
49
|
Requires-Dist: pydantic-extra-types<3.0.0,>=2.8.2
|
50
|
-
Requires-Dist: pydantic-settings
|
50
|
+
Requires-Dist: pydantic-settings!=2.9.0,<3.0.0,>2.2.1
|
51
51
|
Requires-Dist: python-dateutil<3.0.0,>=2.8.2
|
52
52
|
Requires-Dist: python-slugify<9.0,>=5.0
|
53
53
|
Requires-Dist: python-socks[asyncio]<3.0,>=2.5.3
|
@@ -51,7 +51,7 @@ dependencies = [
|
|
51
51
|
"pydantic>=2.9,<3.0.0,!=2.10.0",
|
52
52
|
"pydantic_core>=2.12.0,<3.0.0",
|
53
53
|
"pydantic_extra_types>=2.8.2,<3.0.0",
|
54
|
-
"pydantic_settings>2.2.1",
|
54
|
+
"pydantic_settings>2.2.1,<3.0.0,!=2.9.0",
|
55
55
|
"python-dateutil>=2.8.2,<3.0.0",
|
56
56
|
"python-slugify>=5.0,<9.0",
|
57
57
|
"python-socks[asyncio]>=2.5.3,<3.0",
|
@@ -33,9 +33,9 @@ def _register_stable_transforms() -> None:
|
|
33
33
|
so that cache keys that utilize them are deterministic across invocations.
|
34
34
|
"""
|
35
35
|
try:
|
36
|
-
import pandas as pd
|
36
|
+
import pandas as pd # pyright: ignore
|
37
37
|
|
38
|
-
STABLE_TRANSFORMS[pd.DataFrame] = lambda df: [
|
38
|
+
STABLE_TRANSFORMS[pd.DataFrame] = lambda df: [ # pyright: ignore
|
39
39
|
df[col] for col in sorted(df.columns)
|
40
40
|
]
|
41
41
|
except (ImportError, ModuleNotFoundError):
|
@@ -183,7 +183,7 @@ class CompoundCachePolicy(CachePolicy):
|
|
183
183
|
Any keys that return `None` will be ignored.
|
184
184
|
"""
|
185
185
|
|
186
|
-
policies: list[CachePolicy] = field(default_factory=
|
186
|
+
policies: list[CachePolicy] = field(default_factory=lambda: [])
|
187
187
|
|
188
188
|
def __post_init__(self) -> None:
|
189
189
|
# flatten any CompoundCachePolicies
|
@@ -349,7 +349,7 @@ class Inputs(CachePolicy):
|
|
349
349
|
Policy that computes a cache key based on a hash of the runtime inputs provided to the task..
|
350
350
|
"""
|
351
351
|
|
352
|
-
exclude: list[str] = field(default_factory=
|
352
|
+
exclude: list[str] = field(default_factory=lambda: [])
|
353
353
|
|
354
354
|
def compute_key(
|
355
355
|
self,
|
@@ -13,7 +13,9 @@ class ConcurrencyContext(ContextModel):
|
|
13
13
|
# Track the slots that have been acquired but were not able to be released
|
14
14
|
# due to cancellation or some other error. These slots are released when
|
15
15
|
# the context manager exits.
|
16
|
-
cleanup_slots: list[tuple[list[str], int, float]] = Field(
|
16
|
+
cleanup_slots: list[tuple[list[str], int, float]] = Field(
|
17
|
+
default_factory=lambda: []
|
18
|
+
)
|
17
19
|
|
18
20
|
def __exit__(self, *exc_info: Any) -> None:
|
19
21
|
if self.cleanup_slots:
|
@@ -18,8 +18,6 @@ from typing import TYPE_CHECKING, Any, Callable, ClassVar, Optional, TypeVar, Un
|
|
18
18
|
from pydantic import BaseModel, ConfigDict, Field, PrivateAttr
|
19
19
|
from typing_extensions import Self
|
20
20
|
|
21
|
-
import prefect.logging
|
22
|
-
import prefect.logging.configuration
|
23
21
|
import prefect.settings
|
24
22
|
import prefect.types._datetime
|
25
23
|
from prefect._internal.compatibility.migration import getattr_migration
|
@@ -128,7 +126,7 @@ class ContextModel(BaseModel):
|
|
128
126
|
def __init__(self, **kwargs: Any) -> None: ...
|
129
127
|
|
130
128
|
# The context variable for storing data must be defined by the child class
|
131
|
-
__var__: ClassVar[ContextVar[
|
129
|
+
__var__: ClassVar[ContextVar[Any]]
|
132
130
|
_token: Optional[Token[Self]] = PrivateAttr(None)
|
133
131
|
model_config: ClassVar[ConfigDict] = ConfigDict(
|
134
132
|
arbitrary_types_allowed=True,
|
@@ -612,19 +612,44 @@ def resolve_futures_to_states(
|
|
612
612
|
|
613
613
|
Unsupported object types will be returned without modification.
|
614
614
|
"""
|
615
|
-
futures: set[PrefectFuture[R]] = set()
|
616
615
|
|
617
|
-
def
|
618
|
-
|
619
|
-
|
620
|
-
# Expressions inside quotes should not be traversed
|
621
|
-
if isinstance(context.get("annotation"), quote):
|
622
|
-
raise StopVisiting()
|
616
|
+
def _resolve_state(future: PrefectFuture[R]):
|
617
|
+
future.wait()
|
618
|
+
return future.state
|
623
619
|
|
624
|
-
|
625
|
-
|
620
|
+
return _resolve_futures(
|
621
|
+
expr,
|
622
|
+
resolve_fn=_resolve_state,
|
623
|
+
)
|
626
624
|
|
627
|
-
|
625
|
+
|
626
|
+
def resolve_futures_to_results(
|
627
|
+
expr: PrefectFuture[R] | Any,
|
628
|
+
) -> Any:
|
629
|
+
"""
|
630
|
+
Given a Python built-in collection, recursively find `PrefectFutures` and build a
|
631
|
+
new collection with the same structure with futures resolved to their final results.
|
632
|
+
Resolving futures to their final result may wait for execution to complete.
|
633
|
+
|
634
|
+
Unsupported object types will be returned without modification.
|
635
|
+
"""
|
636
|
+
|
637
|
+
def _resolve_result(future: PrefectFuture[R]) -> Any:
|
638
|
+
future.wait()
|
639
|
+
if future.state.is_completed():
|
640
|
+
return future.result()
|
641
|
+
else:
|
642
|
+
raise Exception("At least one result did not complete successfully")
|
643
|
+
|
644
|
+
return _resolve_futures(expr, resolve_fn=_resolve_result)
|
645
|
+
|
646
|
+
|
647
|
+
def _resolve_futures(
|
648
|
+
expr: PrefectFuture[R] | Any,
|
649
|
+
resolve_fn: Callable[[PrefectFuture[R]], Any],
|
650
|
+
) -> Any:
|
651
|
+
"""Helper function to resolve PrefectFutures in a collection."""
|
652
|
+
futures: set[PrefectFuture[R]] = set()
|
628
653
|
|
629
654
|
visit_collection(
|
630
655
|
expr,
|
@@ -633,31 +658,39 @@ def resolve_futures_to_states(
|
|
633
658
|
context={},
|
634
659
|
)
|
635
660
|
|
636
|
-
#
|
661
|
+
# If no futures were found, return the original expression
|
637
662
|
if not futures:
|
638
663
|
return expr
|
639
664
|
|
640
|
-
#
|
641
|
-
|
642
|
-
for future in futures:
|
643
|
-
future.wait()
|
644
|
-
states.append(future.state)
|
645
|
-
|
646
|
-
states_by_future = dict(zip(futures, states))
|
665
|
+
# Resolve each future using the provided resolve function
|
666
|
+
resolved_values = {future: resolve_fn(future) for future in futures}
|
647
667
|
|
648
|
-
def
|
668
|
+
def replace_futures(expr: Any, context: Any) -> Any:
|
649
669
|
# Expressions inside quotes should not be modified
|
650
670
|
if isinstance(context.get("annotation"), quote):
|
651
671
|
raise StopVisiting()
|
652
672
|
|
653
673
|
if isinstance(expr, PrefectFuture):
|
654
|
-
return
|
674
|
+
return resolved_values[expr]
|
655
675
|
else:
|
656
676
|
return expr
|
657
677
|
|
658
678
|
return visit_collection(
|
659
679
|
expr,
|
660
|
-
visit_fn=
|
680
|
+
visit_fn=replace_futures,
|
661
681
|
return_data=True,
|
662
682
|
context={},
|
663
683
|
)
|
684
|
+
|
685
|
+
|
686
|
+
def _collect_futures(
|
687
|
+
futures: set[PrefectFuture[R]], expr: Any | PrefectFuture[R], context: Any
|
688
|
+
) -> Any | PrefectFuture[R]:
|
689
|
+
# Expressions inside quotes should not be traversed
|
690
|
+
if isinstance(context.get("annotation"), quote):
|
691
|
+
raise StopVisiting()
|
692
|
+
|
693
|
+
if isinstance(expr, PrefectFuture):
|
694
|
+
futures.add(expr)
|
695
|
+
|
696
|
+
return expr
|
@@ -781,7 +781,7 @@ class Runner:
|
|
781
781
|
if command is None:
|
782
782
|
runner_command = [get_sys_executable(), "-m", "prefect.engine"]
|
783
783
|
else:
|
784
|
-
runner_command = shlex.split(command)
|
784
|
+
runner_command = shlex.split(command, posix=(os.name != "nt"))
|
785
785
|
|
786
786
|
flow_run_logger = self._get_flow_run_logger(flow_run)
|
787
787
|
|
@@ -0,0 +1,117 @@
|
|
1
|
+
import ast
|
2
|
+
import math
|
3
|
+
from typing import TYPE_CHECKING, Literal
|
4
|
+
|
5
|
+
import anyio
|
6
|
+
from typing_extensions import TypeAlias
|
7
|
+
|
8
|
+
from prefect.logging.loggers import get_logger
|
9
|
+
from prefect.settings import get_current_settings
|
10
|
+
from prefect.utilities.asyncutils import LazySemaphore
|
11
|
+
from prefect.utilities.filesystem import get_open_file_limit
|
12
|
+
|
13
|
+
# Only allow half of the open file limit to be open at once to allow for other
|
14
|
+
# actors to open files.
|
15
|
+
OPEN_FILE_SEMAPHORE = LazySemaphore(lambda: math.floor(get_open_file_limit() * 0.5))
|
16
|
+
|
17
|
+
# this potentially could be a TypedDict, but you
|
18
|
+
# need some way to convince the type checker that
|
19
|
+
# Literal["flow_name", "task_name"] are being provided
|
20
|
+
DecoratedFnMetadata: TypeAlias = dict[str, str]
|
21
|
+
|
22
|
+
|
23
|
+
async def find_prefect_decorated_functions_in_file(
|
24
|
+
path: anyio.Path, decorator_module: str, decorator_name: Literal["flow", "task"]
|
25
|
+
) -> list[DecoratedFnMetadata]:
|
26
|
+
logger = get_logger()
|
27
|
+
decorator_name_key = f"{decorator_name}_name"
|
28
|
+
decorated_functions: list[DecoratedFnMetadata] = []
|
29
|
+
|
30
|
+
async with OPEN_FILE_SEMAPHORE:
|
31
|
+
try:
|
32
|
+
async with await anyio.open_file(path) as f:
|
33
|
+
try:
|
34
|
+
tree = ast.parse(await f.read())
|
35
|
+
except SyntaxError:
|
36
|
+
if get_current_settings().debug_mode:
|
37
|
+
logger.debug(
|
38
|
+
f"Could not parse {path} as a Python file. Skipping."
|
39
|
+
)
|
40
|
+
return decorated_functions
|
41
|
+
except Exception as exc:
|
42
|
+
if get_current_settings().debug_mode:
|
43
|
+
logger.debug(f"Could not open {path}: {exc}. Skipping.")
|
44
|
+
return decorated_functions
|
45
|
+
|
46
|
+
for node in ast.walk(tree):
|
47
|
+
if isinstance(
|
48
|
+
node,
|
49
|
+
(
|
50
|
+
ast.FunctionDef,
|
51
|
+
ast.AsyncFunctionDef,
|
52
|
+
),
|
53
|
+
):
|
54
|
+
for decorator in node.decorator_list:
|
55
|
+
# handles @decorator_name
|
56
|
+
is_name_match = (
|
57
|
+
isinstance(decorator, ast.Name) and decorator.id == decorator_name
|
58
|
+
)
|
59
|
+
# handles @decorator_name()
|
60
|
+
is_func_name_match = (
|
61
|
+
isinstance(decorator, ast.Call)
|
62
|
+
and isinstance(decorator.func, ast.Name)
|
63
|
+
and decorator.func.id == decorator_name
|
64
|
+
)
|
65
|
+
# handles @decorator_module.decorator_name
|
66
|
+
is_module_attribute_match = (
|
67
|
+
isinstance(decorator, ast.Attribute)
|
68
|
+
and isinstance(decorator.value, ast.Name)
|
69
|
+
and decorator.value.id == decorator_module
|
70
|
+
and decorator.attr == decorator_name
|
71
|
+
)
|
72
|
+
# handles @decorator_module.decorator_name()
|
73
|
+
is_module_attribute_func_match = (
|
74
|
+
isinstance(decorator, ast.Call)
|
75
|
+
and isinstance(decorator.func, ast.Attribute)
|
76
|
+
and decorator.func.attr == decorator_name
|
77
|
+
and isinstance(decorator.func.value, ast.Name)
|
78
|
+
and decorator.func.value.id == decorator_module
|
79
|
+
)
|
80
|
+
if is_name_match or is_module_attribute_match:
|
81
|
+
decorated_functions.append(
|
82
|
+
{
|
83
|
+
decorator_name_key: node.name,
|
84
|
+
"function_name": node.name,
|
85
|
+
"filepath": str(path),
|
86
|
+
}
|
87
|
+
)
|
88
|
+
if is_func_name_match or is_module_attribute_func_match:
|
89
|
+
name_kwarg_node = None
|
90
|
+
if TYPE_CHECKING:
|
91
|
+
assert isinstance(decorator, ast.Call)
|
92
|
+
for kw in decorator.keywords:
|
93
|
+
if kw.arg == "name":
|
94
|
+
name_kwarg_node = kw
|
95
|
+
break
|
96
|
+
if name_kwarg_node is not None and isinstance(
|
97
|
+
name_kwarg_node.value, ast.Constant
|
98
|
+
):
|
99
|
+
decorated_fn_name = name_kwarg_node.value.value
|
100
|
+
else:
|
101
|
+
decorated_fn_name = node.name
|
102
|
+
decorated_functions.append(
|
103
|
+
{
|
104
|
+
decorator_name_key: decorated_fn_name,
|
105
|
+
"function_name": node.name,
|
106
|
+
"filepath": str(path),
|
107
|
+
}
|
108
|
+
)
|
109
|
+
return decorated_functions
|
110
|
+
|
111
|
+
|
112
|
+
async def find_flow_functions_in_file(path: anyio.Path) -> list[DecoratedFnMetadata]:
|
113
|
+
return await find_prefect_decorated_functions_in_file(path, "prefect", "flow")
|
114
|
+
|
115
|
+
|
116
|
+
async def find_task_functions_in_file(path: anyio.Path) -> list[DecoratedFnMetadata]:
|
117
|
+
return await find_prefect_decorated_functions_in_file(path, "prefect", "task")
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/__init__.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/bundles.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/lineage.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/sla/__init__.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_experimental/sla/client.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/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
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/api.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/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.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/threads.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/concurrency/waiters.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/integrations.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/__init__.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/schemas.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/v1_schema.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/pydantic/v2_schema.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/__init__.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/bases.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/fields.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/serializers.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_internal/schemas/validators.py
RENAMED
File without changes
|
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/_vendor/croniter/__init__.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/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
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/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.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/base.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/orchestration/routes.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/__init__.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/actions.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/filters.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/objects.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/responses.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/schedules.py
RENAMED
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/client/schemas/sorting.py
RENAMED
File without changes
|
File without changes
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/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
|
{prefect_client-3.3.5.dev4 → prefect_client-3.3.6.dev2}/src/prefect/concurrency/v1/__init__.py
RENAMED
File without changes
|