prefect-client 3.2.1__tar.gz → 3.2.3__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.2.3/.gitignore +88 -0
- {prefect-client-3.2.1/src/prefect_client.egg-info → prefect_client-3.2.3}/PKG-INFO +47 -12
- prefect_client-3.2.3/pyproject.toml +98 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/__init__.py +15 -8
- prefect_client-3.2.3/src/prefect/_build_info.py +5 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/schemas/bases.py +4 -7
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/schemas/validators.py +5 -6
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_result_records.py +6 -1
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/__init__.py +18 -6
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/schemas/schedules.py +2 -2
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/asyncio.py +4 -3
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/sync.py +3 -3
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/v1/asyncio.py +3 -3
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/v1/sync.py +3 -3
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/deployments/flow_runs.py +2 -2
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/docker/docker_image.py +2 -3
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/engine.py +1 -1
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/clients.py +4 -3
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/related.py +3 -5
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/flows.py +11 -5
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/locking/filesystem.py +8 -8
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/logging/handlers.py +7 -11
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/main.py +0 -2
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/runtime/flow_run.py +10 -17
- prefect_client-3.2.3/src/prefect/server/api/__init__.py +34 -0
- prefect_client-3.2.3/src/prefect/server/api/admin.py +85 -0
- prefect_client-3.2.3/src/prefect/server/api/artifacts.py +224 -0
- prefect_client-3.2.3/src/prefect/server/api/automations.py +239 -0
- prefect_client-3.2.3/src/prefect/server/api/block_capabilities.py +25 -0
- prefect_client-3.2.3/src/prefect/server/api/block_documents.py +164 -0
- prefect_client-3.2.3/src/prefect/server/api/block_schemas.py +153 -0
- prefect_client-3.2.3/src/prefect/server/api/block_types.py +211 -0
- prefect_client-3.2.3/src/prefect/server/api/clients.py +246 -0
- prefect_client-3.2.3/src/prefect/server/api/collections.py +75 -0
- prefect_client-3.2.3/src/prefect/server/api/concurrency_limits.py +286 -0
- prefect_client-3.2.3/src/prefect/server/api/concurrency_limits_v2.py +269 -0
- prefect_client-3.2.3/src/prefect/server/api/csrf_token.py +38 -0
- prefect_client-3.2.3/src/prefect/server/api/dependencies.py +196 -0
- prefect_client-3.2.3/src/prefect/server/api/deployments.py +941 -0
- prefect_client-3.2.3/src/prefect/server/api/events.py +300 -0
- prefect_client-3.2.3/src/prefect/server/api/flow_run_notification_policies.py +120 -0
- prefect_client-3.2.3/src/prefect/server/api/flow_run_states.py +52 -0
- prefect_client-3.2.3/src/prefect/server/api/flow_runs.py +867 -0
- prefect_client-3.2.3/src/prefect/server/api/flows.py +210 -0
- prefect_client-3.2.3/src/prefect/server/api/logs.py +43 -0
- prefect_client-3.2.3/src/prefect/server/api/middleware.py +73 -0
- prefect_client-3.2.3/src/prefect/server/api/root.py +35 -0
- prefect_client-3.2.3/src/prefect/server/api/run_history.py +170 -0
- prefect_client-3.2.3/src/prefect/server/api/saved_searches.py +99 -0
- prefect_client-3.2.3/src/prefect/server/api/server.py +891 -0
- prefect_client-3.2.3/src/prefect/server/api/task_run_states.py +52 -0
- prefect_client-3.2.3/src/prefect/server/api/task_runs.py +342 -0
- prefect_client-3.2.3/src/prefect/server/api/task_workers.py +31 -0
- prefect_client-3.2.3/src/prefect/server/api/templates.py +35 -0
- prefect_client-3.2.3/src/prefect/server/api/ui/__init__.py +3 -0
- prefect_client-3.2.3/src/prefect/server/api/ui/flow_runs.py +128 -0
- prefect_client-3.2.3/src/prefect/server/api/ui/flows.py +173 -0
- prefect_client-3.2.3/src/prefect/server/api/ui/schemas.py +63 -0
- prefect_client-3.2.3/src/prefect/server/api/ui/task_runs.py +175 -0
- prefect_client-3.2.3/src/prefect/server/api/validation.py +382 -0
- prefect_client-3.2.3/src/prefect/server/api/variables.py +181 -0
- prefect_client-3.2.3/src/prefect/server/api/work_queues.py +230 -0
- prefect_client-3.2.3/src/prefect/server/api/workers.py +656 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/sources.py +18 -5
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/states.py +3 -3
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/task_engine.py +3 -3
- prefect_client-3.2.3/src/prefect/types/_datetime.py +125 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/dockerutils.py +2 -2
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/workers/base.py +5 -5
- prefect-client-3.2.1/MANIFEST.in +0 -37
- prefect-client-3.2.1/PKG-INFO +0 -139
- prefect-client-3.2.1/requirements-client.txt +0 -39
- prefect-client-3.2.1/requirements-dev.txt +0 -52
- prefect-client-3.2.1/requirements.txt +0 -18
- prefect-client-3.2.1/setup.cfg +0 -92
- prefect-client-3.2.1/setup.py +0 -44
- prefect-client-3.2.1/src/prefect/_version.py +0 -21
- prefect-client-3.2.1/src/prefect/types/_datetime.py +0 -46
- prefect-client-3.2.1/src/prefect_client.egg-info/SOURCES.txt +0 -291
- prefect-client-3.2.1/src/prefect_client.egg-info/dependency_links.txt +0 -1
- prefect-client-3.2.1/src/prefect_client.egg-info/requires.txt +0 -44
- prefect-client-3.2.1/src/prefect_client.egg-info/top_level.txt +0 -1
- prefect-client-3.2.1/versioneer.py +0 -2326
- {prefect-client-3.2.1 → prefect_client-3.2.3}/LICENSE +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/README.md +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/.prefectignore +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/__main__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_experimental/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_experimental/lineage.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_experimental/sla/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_experimental/sla/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_experimental/sla/objects.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/_logging.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/compatibility/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/compatibility/async_dispatch.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/compatibility/deprecated.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/compatibility/migration.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/concurrency/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/concurrency/api.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/concurrency/calls.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/concurrency/cancellation.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/concurrency/event_loop.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/concurrency/inspection.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/concurrency/primitives.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/concurrency/services.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/concurrency/threads.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/concurrency/waiters.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/integrations.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/pydantic/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/pydantic/annotations/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/pydantic/annotations/pendulum.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/pydantic/schemas.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/pydantic/v1_schema.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/pydantic/v2_schema.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/pydantic/v2_validated_func.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/pytz.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/retries.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/schemas/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/schemas/fields.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/_internal/schemas/serializers.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/agent.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/artifacts.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/automations.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/blocks/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/blocks/abstract.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/blocks/core.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/blocks/fields.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/blocks/notifications.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/blocks/redis.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/blocks/system.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/blocks/webhook.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/cache_policies.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/base.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/cloud.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/collections.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/constants.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_artifacts/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_artifacts/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_automations/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_automations/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_blocks_documents/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_blocks_documents/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_blocks_schemas/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_blocks_schemas/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_blocks_types/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_blocks_types/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_concurrency_limits/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_concurrency_limits/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_deployments/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_deployments/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_flow_runs/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_flow_runs/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_flows/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_flows/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_logs/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_logs/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_variables/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_variables/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_work_pools/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/_work_pools/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/base.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/orchestration/routes.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/schemas/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/schemas/actions.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/schemas/filters.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/schemas/objects.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/schemas/responses.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/schemas/sorting.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/subscriptions.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/types/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/types/flexible_schedule_list.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/client/utilities.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/_asyncio.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/_events.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/context.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/services.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/v1/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/v1/_asyncio.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/v1/_events.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/v1/context.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/concurrency/v1/services.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/context.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/deployments/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/deployments/base.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/deployments/deployments.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/deployments/runner.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/deployments/schedules.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/deployments/steps/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/deployments/steps/core.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/deployments/steps/pull.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/deployments/steps/utility.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/docker/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/actions.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/cli/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/cli/automations.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/filters.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/schemas/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/schemas/automations.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/schemas/deployment_triggers.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/schemas/events.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/schemas/labelling.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/utilities.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/events/worker.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/exceptions.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/filesystems.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/flow_engine.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/flow_runs.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/futures.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/infrastructure/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/infrastructure/base.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/infrastructure/provisioners/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/infrastructure/provisioners/cloud_run.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/infrastructure/provisioners/coiled.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/infrastructure/provisioners/container_instance.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/infrastructure/provisioners/ecs.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/infrastructure/provisioners/modal.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/input/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/input/actions.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/input/run_input.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/locking/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/locking/memory.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/locking/protocol.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/logging/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/logging/configuration.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/logging/filters.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/logging/formatters.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/logging/highlighters.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/logging/loggers.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/logging/logging.yml +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/plugins.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/py.typed +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/results.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/runner/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/runner/runner.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/runner/server.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/runner/storage.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/runner/submit.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/runner/utils.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/runtime/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/runtime/deployment.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/runtime/task_run.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/schedules.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/serializers.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/server/api/collections_data/views/aggregate-worker-metadata.json +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/server/api/static/prefect-logo-mark-gradient.png +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/base.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/constants.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/context.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/legacy.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/api.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/cli.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/client.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/cloud.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/deployments.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/experiments.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/flows.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/internal.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/logging.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/results.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/root.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/runner.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/server/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/server/api.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/server/database.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/server/deployments.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/server/ephemeral.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/server/events.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/server/flow_run_graph.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/server/root.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/server/services.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/server/tasks.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/server/ui.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/tasks.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/testing.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/models/worker.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/profiles.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/settings/profiles.toml +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/task_runners.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/task_runs.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/task_worker.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/tasks.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/telemetry/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/telemetry/bootstrap.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/telemetry/instrumentation.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/telemetry/logging.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/telemetry/processors.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/telemetry/run_telemetry.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/telemetry/services.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/transactions.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/types/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/types/entrypoint.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/_deprecated.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/_engine.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/_git.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/annotations.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/asyncutils.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/callables.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/collections.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/compat.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/context.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/dispatch.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/engine.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/filesystem.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/generics.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/hashing.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/importtools.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/math.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/names.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/processutils.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/pydantic.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/render_swagger.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/schema_tools/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/schema_tools/hydration.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/schema_tools/validation.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/services.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/slugify.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/templating.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/text.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/timeout.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/urls.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/utilities/visualization.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/variables.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/workers/__init__.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/workers/block.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/workers/cloud.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/workers/process.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/workers/server.py +0 -0
- {prefect-client-3.2.1 → prefect_client-3.2.3}/src/prefect/workers/utilities.py +0 -0
@@ -0,0 +1,88 @@
|
|
1
|
+
# Python artifacts
|
2
|
+
__pycache__/
|
3
|
+
*.py[cod]
|
4
|
+
*$py.class
|
5
|
+
*.egg-info/
|
6
|
+
*.egg
|
7
|
+
build/
|
8
|
+
dist/
|
9
|
+
sdist/
|
10
|
+
# We likely ought to eventually include uv.lock
|
11
|
+
uv.lock
|
12
|
+
|
13
|
+
# Build metadata
|
14
|
+
src/prefect/_build_info.py
|
15
|
+
src/prefect/_version.py
|
16
|
+
|
17
|
+
# Test artifacts
|
18
|
+
.benchmarks/
|
19
|
+
.coverage
|
20
|
+
.coverage.*.*
|
21
|
+
.prefect-results
|
22
|
+
.pytest_cache/
|
23
|
+
|
24
|
+
# Type checking artifacts
|
25
|
+
.mypy_cache/
|
26
|
+
.dmypy.json
|
27
|
+
dmypy.json
|
28
|
+
.pyre/
|
29
|
+
|
30
|
+
# IPython
|
31
|
+
profile_default/
|
32
|
+
ipython_config.py
|
33
|
+
*.ipynb_checkpoints/*
|
34
|
+
|
35
|
+
# Profiling
|
36
|
+
/prof
|
37
|
+
|
38
|
+
# Environments
|
39
|
+
.python-version
|
40
|
+
.env
|
41
|
+
.venv
|
42
|
+
env/
|
43
|
+
venv/
|
44
|
+
|
45
|
+
# Documentation artifacts
|
46
|
+
# gschema.json
|
47
|
+
site/
|
48
|
+
.cache/
|
49
|
+
src/mkdocs-material
|
50
|
+
|
51
|
+
# UI artifacts
|
52
|
+
src/prefect/server/ui/*
|
53
|
+
src/prefect/server/ui_build/*
|
54
|
+
**/node_modules
|
55
|
+
|
56
|
+
# Databases
|
57
|
+
*.db
|
58
|
+
|
59
|
+
# API artifacts
|
60
|
+
|
61
|
+
# MacOS
|
62
|
+
.DS_Store
|
63
|
+
|
64
|
+
# Dask
|
65
|
+
dask-worker-space/
|
66
|
+
|
67
|
+
# Editors
|
68
|
+
.idea/
|
69
|
+
.vscode/
|
70
|
+
!ui/.vscode/
|
71
|
+
|
72
|
+
# Prefect files
|
73
|
+
prefect.toml
|
74
|
+
prefect.yaml
|
75
|
+
|
76
|
+
# Deployment recipes
|
77
|
+
!src/prefect/deployments/recipes/*/**
|
78
|
+
|
79
|
+
# For development doc server if link
|
80
|
+
libcairo.2.dylib
|
81
|
+
|
82
|
+
# setuptools-scm generated files
|
83
|
+
src/prefect/_version.py
|
84
|
+
src/integrations/*/**/_version.py
|
85
|
+
*.log
|
86
|
+
|
87
|
+
# Pyright type analysis report
|
88
|
+
prefect-analysis.json
|
@@ -1,20 +1,18 @@
|
|
1
|
-
Metadata-Version: 2.
|
1
|
+
Metadata-Version: 2.4
|
2
2
|
Name: prefect-client
|
3
|
-
Version: 3.2.
|
3
|
+
Version: 3.2.3
|
4
4
|
Summary: Workflow orchestration and management.
|
5
|
-
Home-page: https://www.prefect.io
|
6
|
-
Author: Prefect Technologies, Inc.
|
7
|
-
Author-email: help@prefect.io
|
8
|
-
License: UNKNOWN
|
9
5
|
Project-URL: Changelog, https://github.com/PrefectHQ/prefect/releases
|
10
6
|
Project-URL: Documentation, https://docs.prefect.io
|
11
7
|
Project-URL: Source, https://github.com/PrefectHQ/prefect
|
12
8
|
Project-URL: Tracker, https://github.com/PrefectHQ/prefect/issues
|
13
|
-
|
14
|
-
|
9
|
+
Author-email: "Prefect Technologies, Inc." <help@prefect.io>
|
10
|
+
License: Apache-2.0
|
11
|
+
License-File: LICENSE
|
15
12
|
Classifier: Intended Audience :: Developers
|
16
13
|
Classifier: Intended Audience :: System Administrators
|
17
14
|
Classifier: License :: OSI Approved :: Apache Software License
|
15
|
+
Classifier: Natural Language :: English
|
18
16
|
Classifier: Programming Language :: Python :: 3 :: Only
|
19
17
|
Classifier: Programming Language :: Python :: 3.9
|
20
18
|
Classifier: Programming Language :: Python :: 3.10
|
@@ -22,9 +20,48 @@ Classifier: Programming Language :: Python :: 3.11
|
|
22
20
|
Classifier: Programming Language :: Python :: 3.12
|
23
21
|
Classifier: Topic :: Software Development :: Libraries
|
24
22
|
Requires-Python: >=3.9
|
25
|
-
|
23
|
+
Requires-Dist: anyio<5.0.0,>=4.4.0
|
24
|
+
Requires-Dist: asgi-lifespan<3.0,>=1.0
|
25
|
+
Requires-Dist: cachetools<6.0,>=5.3
|
26
|
+
Requires-Dist: cloudpickle<4.0,>=2.0
|
27
|
+
Requires-Dist: coolname<3.0.0,>=1.0.4
|
28
|
+
Requires-Dist: croniter<7.0.0,>=1.0.12
|
29
|
+
Requires-Dist: exceptiongroup>=1.0.0
|
30
|
+
Requires-Dist: fastapi<1.0.0,>=0.111.0
|
31
|
+
Requires-Dist: fsspec>=2022.5.0
|
32
|
+
Requires-Dist: graphviz>=0.20.1
|
33
|
+
Requires-Dist: griffe<2.0.0,>=0.49.0
|
34
|
+
Requires-Dist: httpcore<2.0.0,>=1.0.5
|
35
|
+
Requires-Dist: httpx[http2]!=0.23.2,>=0.23
|
36
|
+
Requires-Dist: importlib-metadata>=4.4; python_version < '3.10'
|
37
|
+
Requires-Dist: jsonpatch<2.0,>=1.32
|
38
|
+
Requires-Dist: jsonschema<5.0.0,>=4.0.0
|
39
|
+
Requires-Dist: opentelemetry-api<2.0.0,>=1.27.0
|
40
|
+
Requires-Dist: orjson<4.0,>=3.7
|
41
|
+
Requires-Dist: packaging<24.3,>=21.3
|
42
|
+
Requires-Dist: pathspec>=0.8.0
|
43
|
+
Requires-Dist: pendulum<4,>=3.0.0
|
44
|
+
Requires-Dist: prometheus-client>=0.20.0
|
45
|
+
Requires-Dist: pydantic!=2.10.0,<3.0.0,>=2.9
|
46
|
+
Requires-Dist: pydantic-core<3.0.0,>=2.12.0
|
47
|
+
Requires-Dist: pydantic-extra-types<3.0.0,>=2.8.2
|
48
|
+
Requires-Dist: pydantic-settings>2.2.1
|
49
|
+
Requires-Dist: python-dateutil<3.0.0,>=2.8.2
|
50
|
+
Requires-Dist: python-slugify<9.0,>=5.0
|
51
|
+
Requires-Dist: python-socks[asyncio]<3.0,>=2.5.3
|
52
|
+
Requires-Dist: pyyaml<7.0.0,>=5.4.1
|
53
|
+
Requires-Dist: rfc3339-validator<0.2.0,>=0.1.4
|
54
|
+
Requires-Dist: rich<14.0,>=11.0
|
55
|
+
Requires-Dist: ruamel-yaml>=0.17.0
|
56
|
+
Requires-Dist: sniffio<2.0.0,>=1.3.0
|
57
|
+
Requires-Dist: toml>=0.10.0
|
58
|
+
Requires-Dist: typing-extensions<5.0.0,>=4.5.0
|
59
|
+
Requires-Dist: ujson<6.0.0,>=5.8.0
|
60
|
+
Requires-Dist: uvicorn!=0.29.0,>=0.14.0
|
61
|
+
Requires-Dist: websockets<14.0,>=10.4
|
26
62
|
Provides-Extra: notifications
|
27
|
-
|
63
|
+
Requires-Dist: apprise<2.0.0,>=1.1.0; extra == 'notifications'
|
64
|
+
Description-Content-Type: text/markdown
|
28
65
|
|
29
66
|
<p align="center"><img src="https://github.com/PrefectHQ/prefect/assets/3407835/c654cbc6-63e8-4ada-a92a-efd2f8f24b85" width=1000></p>
|
30
67
|
|
@@ -135,5 +172,3 @@ All community forums, including code contributions, issue discussions, and Slack
|
|
135
172
|
See our [documentation on contributing to Prefect](https://docs.prefect.io/contributing/overview/).
|
136
173
|
|
137
174
|
Thanks for being part of the mission to build a new kind of workflow system and, of course, **happy engineering!**
|
138
|
-
|
139
|
-
|
@@ -0,0 +1,98 @@
|
|
1
|
+
[build-system]
|
2
|
+
requires = ["hatchling", "versioningit"]
|
3
|
+
build-backend = "hatchling.build"
|
4
|
+
|
5
|
+
[project]
|
6
|
+
name = "prefect-client"
|
7
|
+
dynamic = ["version"]
|
8
|
+
description = "Workflow orchestration and management."
|
9
|
+
readme = "README.md"
|
10
|
+
requires-python = ">=3.9"
|
11
|
+
license = { text = "Apache-2.0" }
|
12
|
+
authors = [{ name = "Prefect Technologies, Inc.", email = "help@prefect.io" }]
|
13
|
+
classifiers = [
|
14
|
+
"Natural Language :: English",
|
15
|
+
"Intended Audience :: Developers",
|
16
|
+
"Intended Audience :: System Administrators",
|
17
|
+
"License :: OSI Approved :: Apache Software License",
|
18
|
+
"Programming Language :: Python :: 3 :: Only",
|
19
|
+
"Programming Language :: Python :: 3.9",
|
20
|
+
"Programming Language :: Python :: 3.10",
|
21
|
+
"Programming Language :: Python :: 3.11",
|
22
|
+
"Programming Language :: Python :: 3.12",
|
23
|
+
"Topic :: Software Development :: Libraries",
|
24
|
+
]
|
25
|
+
dependencies = [
|
26
|
+
# Client dependencies
|
27
|
+
"anyio>=4.4.0,<5.0.0",
|
28
|
+
"asgi-lifespan>=1.0,<3.0",
|
29
|
+
"cachetools>=5.3,<6.0",
|
30
|
+
"cloudpickle>=2.0,<4.0",
|
31
|
+
"coolname>=1.0.4,<3.0.0",
|
32
|
+
"croniter>=1.0.12,<7.0.0",
|
33
|
+
"exceptiongroup>=1.0.0",
|
34
|
+
"fastapi>=0.111.0,<1.0.0",
|
35
|
+
"fsspec>=2022.5.0",
|
36
|
+
"graphviz>=0.20.1",
|
37
|
+
"griffe>=0.49.0,<2.0.0",
|
38
|
+
"httpcore>=1.0.5,<2.0.0",
|
39
|
+
"httpx[http2]>=0.23,!=0.23.2",
|
40
|
+
"importlib_metadata>=4.4;python_version<'3.10'",
|
41
|
+
"jsonpatch>=1.32,<2.0",
|
42
|
+
"jsonschema>=4.0.0,<5.0.0",
|
43
|
+
"opentelemetry-api>=1.27.0,<2.0.0",
|
44
|
+
"orjson>=3.7,<4.0",
|
45
|
+
"packaging>=21.3,<24.3",
|
46
|
+
"pathspec>=0.8.0",
|
47
|
+
"pendulum>=3.0.0,<4",
|
48
|
+
"prometheus-client>=0.20.0",
|
49
|
+
"pydantic>=2.9,<3.0.0,!=2.10.0",
|
50
|
+
"pydantic_core>=2.12.0,<3.0.0",
|
51
|
+
"pydantic_extra_types>=2.8.2,<3.0.0",
|
52
|
+
"pydantic_settings>2.2.1",
|
53
|
+
"python-dateutil>=2.8.2,<3.0.0",
|
54
|
+
"python-slugify>=5.0,<9.0",
|
55
|
+
"python-socks[asyncio]>=2.5.3,<3.0",
|
56
|
+
"pyyaml>=5.4.1,<7.0.0",
|
57
|
+
"rfc3339-validator>=0.1.4,<0.2.0",
|
58
|
+
"rich>=11.0,<14.0",
|
59
|
+
"ruamel.yaml>=0.17.0",
|
60
|
+
"sniffio>=1.3.0,<2.0.0",
|
61
|
+
"toml>=0.10.0",
|
62
|
+
"typing_extensions>=4.5.0,<5.0.0",
|
63
|
+
"ujson>=5.8.0,<6.0.0",
|
64
|
+
"uvicorn>=0.14.0,!=0.29.0",
|
65
|
+
"websockets>=10.4,<14.0",
|
66
|
+
]
|
67
|
+
[project.urls]
|
68
|
+
Changelog = "https://github.com/PrefectHQ/prefect/releases"
|
69
|
+
Documentation = "https://docs.prefect.io"
|
70
|
+
Source = "https://github.com/PrefectHQ/prefect"
|
71
|
+
Tracker = "https://github.com/PrefectHQ/prefect/issues"
|
72
|
+
[project.optional-dependencies]
|
73
|
+
notifications = ["apprise>=1.1.0, <2.0.0"]
|
74
|
+
|
75
|
+
|
76
|
+
[tool.hatch.version]
|
77
|
+
source = "versioningit"
|
78
|
+
|
79
|
+
[tool.versioningit.vcs]
|
80
|
+
match = ["[0-9]*.[0-9]*.[0-9]*", "[0-9]*.[0-9]*.[0-9]*.dev[0-9]*"]
|
81
|
+
|
82
|
+
[tool.versioningit.write]
|
83
|
+
method = { module = "write_build_info", value = "write_build_info", module-dir = "tools" }
|
84
|
+
path = "src/prefect/_build_info.py"
|
85
|
+
|
86
|
+
[tool.versioningit.format]
|
87
|
+
distance = "{base_version}+{distance}.{vcs}{rev}"
|
88
|
+
dirty = "{base_version}"
|
89
|
+
distance-dirty = "{base_version}+{distance}.{vcs}{rev}"
|
90
|
+
|
91
|
+
[tool.hatch.build]
|
92
|
+
artifacts = ["src/prefect/_build_info.py"]
|
93
|
+
|
94
|
+
[tool.hatch.build.targets.sdist]
|
95
|
+
include = ["/src/prefect", "/README.md", "/LICENSE", "/pyproject.toml"]
|
96
|
+
|
97
|
+
[tool.hatch.build.targets.wheel]
|
98
|
+
packages = ["src/prefect"]
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# Setup version and path constants
|
4
4
|
|
5
5
|
import sys
|
6
|
-
from . import
|
6
|
+
from . import _build_info
|
7
7
|
import importlib
|
8
8
|
import pathlib
|
9
9
|
from typing import TYPE_CHECKING, Any, Optional, TypedDict, cast
|
@@ -24,16 +24,14 @@ if TYPE_CHECKING:
|
|
24
24
|
unmapped,
|
25
25
|
serve,
|
26
26
|
aserve,
|
27
|
-
deploy,
|
28
27
|
pause_flow_run,
|
29
28
|
resume_flow_run,
|
30
29
|
suspend_flow_run,
|
31
30
|
)
|
31
|
+
from prefect.deployments.runner import deploy
|
32
32
|
|
33
33
|
__spec__: ModuleSpec
|
34
34
|
|
35
|
-
# Versioneer provides version information as dictionaries
|
36
|
-
# with these keys
|
37
35
|
class VersionInfo(TypedDict("_FullRevisionId", {"full-revisionid": str})):
|
38
36
|
version: str
|
39
37
|
dirty: Optional[bool]
|
@@ -41,8 +39,17 @@ if TYPE_CHECKING:
|
|
41
39
|
date: Optional[str]
|
42
40
|
|
43
41
|
|
44
|
-
|
45
|
-
|
42
|
+
__version__ = _build_info.__version__
|
43
|
+
__version_info__: "VersionInfo" = cast(
|
44
|
+
"VersionInfo",
|
45
|
+
{
|
46
|
+
"version": __version__,
|
47
|
+
"date": _build_info.__build_date__,
|
48
|
+
"full-revisionid": _build_info.__git_commit__,
|
49
|
+
"error": None,
|
50
|
+
"dirty": _build_info.__dirty__,
|
51
|
+
},
|
52
|
+
)
|
46
53
|
|
47
54
|
# The absolute path to this module
|
48
55
|
__module_path__: pathlib.Path = pathlib.Path(__file__).parent
|
@@ -56,12 +63,12 @@ __ui_static_subpath__: pathlib.Path = __module_path__ / "server" / "ui_build"
|
|
56
63
|
# The absolute path to the built UI within the Python module
|
57
64
|
__ui_static_path__: pathlib.Path = __module_path__ / "server" / "ui"
|
58
65
|
|
59
|
-
del
|
66
|
+
del _build_info, pathlib
|
60
67
|
|
61
68
|
_public_api: dict[str, tuple[Optional[str], str]] = {
|
62
69
|
"allow_failure": (__spec__.parent, ".main"),
|
63
70
|
"aserve": (__spec__.parent, ".main"),
|
64
|
-
"deploy": (__spec__.parent, ".
|
71
|
+
"deploy": (__spec__.parent, ".deployments.runner"),
|
65
72
|
"flow": (__spec__.parent, ".main"),
|
66
73
|
"Flow": (__spec__.parent, ".main"),
|
67
74
|
"get_client": (__spec__.parent, ".main"),
|
@@ -3,15 +3,14 @@ Utilities for creating and working with Prefect REST API schemas.
|
|
3
3
|
"""
|
4
4
|
|
5
5
|
import datetime
|
6
|
-
from typing import Any, ClassVar, Optional, TypeVar
|
6
|
+
from typing import Any, ClassVar, Optional, TypeVar
|
7
7
|
from uuid import UUID, uuid4
|
8
8
|
|
9
|
-
import pendulum
|
10
9
|
from pydantic import BaseModel, ConfigDict, Field
|
11
10
|
from rich.repr import RichReprResult
|
12
11
|
from typing_extensions import Self
|
13
12
|
|
14
|
-
from prefect.types import DateTime
|
13
|
+
from prefect.types._datetime import DateTime, create_datetime_instance
|
15
14
|
from prefect.utilities.generics import validate_list
|
16
15
|
|
17
16
|
T = TypeVar("T")
|
@@ -73,11 +72,9 @@ class PrefectBaseModel(BaseModel):
|
|
73
72
|
and name == "timestamp"
|
74
73
|
and value
|
75
74
|
):
|
76
|
-
value =
|
75
|
+
value = create_datetime_instance(value).isoformat()
|
77
76
|
elif isinstance(field.annotation, datetime.datetime) and value:
|
78
|
-
value =
|
79
|
-
pendulum.DateTime, pendulum.instance(value)
|
80
|
-
).diff_for_humans()
|
77
|
+
value = create_datetime_instance(value).diff_for_humans()
|
81
78
|
|
82
79
|
yield name, value, field.get_default()
|
83
80
|
|
@@ -19,9 +19,8 @@ from typing import TYPE_CHECKING, Any, Optional, TypeVar, Union, overload
|
|
19
19
|
from uuid import UUID
|
20
20
|
|
21
21
|
import jsonschema
|
22
|
-
import pendulum
|
23
|
-
import pendulum.tz
|
24
22
|
|
23
|
+
from prefect.types._datetime import DateTime, create_datetime_instance, get_timezones
|
25
24
|
from prefect.utilities.collections import isiterable
|
26
25
|
from prefect.utilities.filesystem import relative_path_to_current_platform
|
27
26
|
from prefect.utilities.importtools import from_qualified_name
|
@@ -253,8 +252,8 @@ def reconcile_paused_deployment(values: MM) -> MM:
|
|
253
252
|
return values
|
254
253
|
|
255
254
|
|
256
|
-
def default_anchor_date(v:
|
257
|
-
return
|
255
|
+
def default_anchor_date(v: DateTime) -> DateTime:
|
256
|
+
return create_datetime_instance(v)
|
258
257
|
|
259
258
|
|
260
259
|
@overload
|
@@ -271,7 +270,7 @@ def default_timezone(
|
|
271
270
|
v: Optional[str], values: Optional[Mapping[str, Any]] = None
|
272
271
|
) -> Optional[str]:
|
273
272
|
values = values or {}
|
274
|
-
timezones =
|
273
|
+
timezones = get_timezones()
|
275
274
|
|
276
275
|
if v is not None:
|
277
276
|
if v and v not in timezones:
|
@@ -283,7 +282,7 @@ def default_timezone(
|
|
283
282
|
|
284
283
|
# anchor schedules
|
285
284
|
elif "anchor_date" in values:
|
286
|
-
anchor_date:
|
285
|
+
anchor_date: DateTime = values["anchor_date"]
|
287
286
|
tz = "UTC" if anchor_date.tz is None else anchor_date.tz.name
|
288
287
|
# sometimes anchor dates have "timezones" that are UTC offsets
|
289
288
|
# like "-04:00". This happens when parsing ISO8601 strings.
|
@@ -9,6 +9,7 @@ from typing import (
|
|
9
9
|
Optional,
|
10
10
|
TypeVar,
|
11
11
|
Union,
|
12
|
+
cast,
|
12
13
|
)
|
13
14
|
from uuid import UUID
|
14
15
|
|
@@ -146,6 +147,8 @@ class ResultRecord(BaseModel, Generic[R]):
|
|
146
147
|
@classmethod
|
147
148
|
def coerce_old_format(cls, value: dict[str, Any] | Any) -> dict[str, Any]:
|
148
149
|
if isinstance(value, dict):
|
150
|
+
if TYPE_CHECKING: # TODO: # isintance doesn't accept generic parameters
|
151
|
+
value = cast(dict[str, Any], value)
|
149
152
|
if "data" in value:
|
150
153
|
value["result"] = value.pop("data")
|
151
154
|
if "metadata" not in value:
|
@@ -232,4 +235,6 @@ class ResultRecord(BaseModel, Generic[R]):
|
|
232
235
|
def __eq__(self, other: Any | "ResultRecord[Any]") -> bool:
|
233
236
|
if not isinstance(other, ResultRecord):
|
234
237
|
return False
|
235
|
-
return self.metadata
|
238
|
+
return self.model_dump(include={"metadata", "result"}) == other.model_dump(
|
239
|
+
include={"metadata", "result"}
|
240
|
+
)
|
@@ -11,7 +11,7 @@ from uuid import UUID
|
|
11
11
|
import certifi
|
12
12
|
import httpcore
|
13
13
|
import httpx
|
14
|
-
|
14
|
+
|
15
15
|
import pydantic
|
16
16
|
from asgi_lifespan import LifespanManager
|
17
17
|
from packaging import version
|
@@ -130,6 +130,7 @@ from prefect.settings import (
|
|
130
130
|
PREFECT_SERVER_ALLOW_EPHEMERAL_MODE,
|
131
131
|
PREFECT_TESTING_UNIT_TEST_MODE,
|
132
132
|
)
|
133
|
+
from prefect.types._datetime import now
|
133
134
|
|
134
135
|
if TYPE_CHECKING:
|
135
136
|
from prefect.tasks import Task as TaskObject
|
@@ -149,18 +150,29 @@ T = TypeVar("T")
|
|
149
150
|
|
150
151
|
@overload
|
151
152
|
def get_client(
|
152
|
-
|
153
|
-
|
154
|
-
sync_client: Literal[False] = False,
|
153
|
+
httpx_settings: Optional[dict[str, Any]],
|
154
|
+
sync_client: Literal[False],
|
155
155
|
) -> "PrefectClient": ...
|
156
156
|
|
157
157
|
|
158
|
+
@overload
|
159
|
+
def get_client(*, httpx_settings: Optional[dict[str, Any]]) -> "PrefectClient": ...
|
160
|
+
|
161
|
+
|
162
|
+
@overload
|
163
|
+
def get_client(*, sync_client: Literal[False] = False) -> "PrefectClient": ...
|
164
|
+
|
165
|
+
|
158
166
|
@overload
|
159
167
|
def get_client(
|
160
|
-
|
168
|
+
httpx_settings: Optional[dict[str, Any]], sync_client: Literal[True]
|
161
169
|
) -> "SyncPrefectClient": ...
|
162
170
|
|
163
171
|
|
172
|
+
@overload
|
173
|
+
def get_client(*, sync_client: Literal[True]) -> "SyncPrefectClient": ...
|
174
|
+
|
175
|
+
|
164
176
|
def get_client(
|
165
177
|
httpx_settings: Optional[dict[str, Any]] = None, sync_client: bool = False
|
166
178
|
) -> Union["SyncPrefectClient", "PrefectClient"]:
|
@@ -607,7 +619,7 @@ class PrefectClient(
|
|
607
619
|
List[FlowRun]: a list of FlowRun objects read from the queue
|
608
620
|
"""
|
609
621
|
if scheduled_before is None:
|
610
|
-
scheduled_before =
|
622
|
+
scheduled_before = now("UTC")
|
611
623
|
|
612
624
|
try:
|
613
625
|
response = await self._client.post(
|
@@ -30,7 +30,7 @@ def is_valid_timezone(v: str) -> bool:
|
|
30
30
|
Validate that the provided timezone is a valid IANA timezone.
|
31
31
|
|
32
32
|
Unfortunately this list is slightly different from the list of valid
|
33
|
-
timezones
|
33
|
+
timezones we use for cron and interval timezone validation.
|
34
34
|
"""
|
35
35
|
from prefect._internal.pytz import HAS_PYTZ
|
36
36
|
|
@@ -309,7 +309,7 @@ class RRuleSchedule(PrefectBaseModel):
|
|
309
309
|
Validate that the provided timezone is a valid IANA timezone.
|
310
310
|
|
311
311
|
Unfortunately this list is slightly different from the list of valid
|
312
|
-
timezones
|
312
|
+
timezones we use for cron and interval timezone validation.
|
313
313
|
"""
|
314
314
|
if v is None:
|
315
315
|
return "UTC"
|
@@ -3,7 +3,8 @@ from contextlib import asynccontextmanager
|
|
3
3
|
from typing import Optional, Union
|
4
4
|
|
5
5
|
import anyio
|
6
|
-
|
6
|
+
|
7
|
+
from prefect.types._datetime import now
|
7
8
|
|
8
9
|
from ._asyncio import (
|
9
10
|
AcquireConcurrencySlotTimeoutError as AcquireConcurrencySlotTimeoutError,
|
@@ -69,13 +70,13 @@ async def concurrency(
|
|
69
70
|
max_retries=max_retries,
|
70
71
|
strict=strict,
|
71
72
|
)
|
72
|
-
acquisition_time =
|
73
|
+
acquisition_time = now("UTC")
|
73
74
|
emitted_events = emit_concurrency_acquisition_events(limits, occupy)
|
74
75
|
|
75
76
|
try:
|
76
77
|
yield
|
77
78
|
finally:
|
78
|
-
occupancy_period =
|
79
|
+
occupancy_period = now("UTC") - acquisition_time
|
79
80
|
try:
|
80
81
|
await arelease_concurrency_slots(
|
81
82
|
names, occupy, occupancy_period.total_seconds()
|
@@ -2,10 +2,10 @@ from collections.abc import Generator
|
|
2
2
|
from contextlib import contextmanager
|
3
3
|
from typing import Optional, TypeVar, Union
|
4
4
|
|
5
|
-
import pendulum
|
6
5
|
from typing_extensions import Literal
|
7
6
|
|
8
7
|
from prefect.client.schemas.responses import MinimalConcurrencyLimitResponse
|
8
|
+
from prefect.types._datetime import now
|
9
9
|
from prefect.utilities.asyncutils import run_coro_as_sync
|
10
10
|
|
11
11
|
from ._asyncio import (
|
@@ -98,13 +98,13 @@ def concurrency(
|
|
98
98
|
strict=strict,
|
99
99
|
max_retries=max_retries,
|
100
100
|
)
|
101
|
-
acquisition_time =
|
101
|
+
acquisition_time = now("UTC")
|
102
102
|
emitted_events = emit_concurrency_acquisition_events(limits, occupy)
|
103
103
|
|
104
104
|
try:
|
105
105
|
yield
|
106
106
|
finally:
|
107
|
-
occupancy_period =
|
107
|
+
occupancy_period = now("UTC") - acquisition_time
|
108
108
|
_release_concurrency_slots(names, occupy, occupancy_period.total_seconds())
|
109
109
|
emit_concurrency_release_events(limits, occupy, emitted_events)
|
110
110
|
|
@@ -4,7 +4,6 @@ from typing import TYPE_CHECKING, Optional, Union
|
|
4
4
|
from uuid import UUID
|
5
5
|
|
6
6
|
import anyio
|
7
|
-
import pendulum
|
8
7
|
|
9
8
|
from prefect.concurrency.v1._asyncio import (
|
10
9
|
acquire_concurrency_slots,
|
@@ -15,6 +14,7 @@ from prefect.concurrency.v1._events import (
|
|
15
14
|
emit_concurrency_release_events,
|
16
15
|
)
|
17
16
|
from prefect.concurrency.v1.context import ConcurrencyContext
|
17
|
+
from prefect.types._datetime import now
|
18
18
|
|
19
19
|
from ._asyncio import (
|
20
20
|
AcquireConcurrencySlotTimeoutError as AcquireConcurrencySlotTimeoutError,
|
@@ -67,13 +67,13 @@ async def concurrency(
|
|
67
67
|
if TYPE_CHECKING:
|
68
68
|
assert not isinstance(acquire_slots, list)
|
69
69
|
limits = await acquire_slots
|
70
|
-
acquisition_time =
|
70
|
+
acquisition_time = now("UTC")
|
71
71
|
emitted_events = emit_concurrency_acquisition_events(limits, task_run_id)
|
72
72
|
|
73
73
|
try:
|
74
74
|
yield
|
75
75
|
finally:
|
76
|
-
occupancy_period =
|
76
|
+
occupancy_period = now("UTC") - acquisition_time
|
77
77
|
try:
|
78
78
|
release_slots = release_concurrency_slots(
|
79
79
|
names_normalized, task_run_id, occupancy_period.total_seconds()
|
@@ -4,7 +4,7 @@ from contextlib import contextmanager
|
|
4
4
|
from typing import Optional, TypeVar, Union
|
5
5
|
from uuid import UUID
|
6
6
|
|
7
|
-
import
|
7
|
+
from prefect.types._datetime import now
|
8
8
|
|
9
9
|
from ._asyncio import acquire_concurrency_slots, release_concurrency_slots
|
10
10
|
from ._events import (
|
@@ -59,13 +59,13 @@ def concurrency(
|
|
59
59
|
)
|
60
60
|
assert not asyncio.iscoroutine(result)
|
61
61
|
limits = result
|
62
|
-
acquisition_time =
|
62
|
+
acquisition_time = now("UTC")
|
63
63
|
emitted_events = emit_concurrency_acquisition_events(limits, task_run_id)
|
64
64
|
|
65
65
|
try:
|
66
66
|
yield
|
67
67
|
finally:
|
68
|
-
occupancy_period =
|
68
|
+
occupancy_period = now("UTC") - acquisition_time
|
69
69
|
release_concurrency_slots(
|
70
70
|
names, task_run_id, occupancy_period.total_seconds(), **force
|
71
71
|
)
|
@@ -3,7 +3,6 @@ from typing import TYPE_CHECKING, Any, Iterable, Optional, Union
|
|
3
3
|
from uuid import UUID
|
4
4
|
|
5
5
|
import anyio
|
6
|
-
import pendulum
|
7
6
|
|
8
7
|
import prefect
|
9
8
|
from prefect._result_records import ResultRecordMetadata
|
@@ -16,6 +15,7 @@ from prefect.tasks import Task
|
|
16
15
|
from prefect.telemetry.run_telemetry import (
|
17
16
|
LABELS_TRACEPARENT_KEY,
|
18
17
|
)
|
18
|
+
from prefect.types._datetime import now
|
19
19
|
from prefect.utilities.asyncutils import sync_compatible
|
20
20
|
from prefect.utilities.slugify import slugify
|
21
21
|
|
@@ -96,7 +96,7 @@ async def run_deployment(
|
|
96
96
|
raise ValueError("`timeout` cannot be negative")
|
97
97
|
|
98
98
|
if scheduled_time is None:
|
99
|
-
scheduled_time =
|
99
|
+
scheduled_time = now("UTC")
|
100
100
|
|
101
101
|
parameters = parameters or {}
|
102
102
|
|
@@ -1,11 +1,10 @@
|
|
1
1
|
from pathlib import Path
|
2
2
|
from typing import Any, Optional
|
3
3
|
|
4
|
-
from pendulum import now as pendulum_now
|
5
|
-
|
6
4
|
from prefect.settings import (
|
7
5
|
PREFECT_DEFAULT_DOCKER_BUILD_NAMESPACE,
|
8
6
|
)
|
7
|
+
from prefect.types._datetime import now
|
9
8
|
from prefect.utilities.dockerutils import (
|
10
9
|
PushError,
|
11
10
|
build_image,
|
@@ -54,7 +53,7 @@ class DockerImage:
|
|
54
53
|
# join the namespace and repository to create the full image name
|
55
54
|
# ignore namespace if it is None
|
56
55
|
self.name: str = "/".join(filter(None, [namespace, repository]))
|
57
|
-
self.tag: str = tag or image_tag or slugify(
|
56
|
+
self.tag: str = tag or image_tag or slugify(now("UTC").isoformat())
|
58
57
|
self.dockerfile: str = dockerfile
|
59
58
|
self.build_kwargs: dict[str, Any] = build_kwargs
|
60
59
|
|