Last 7 days
0
Features: 0
Changes: 0
Fixes: 0
Deprecations: 0
Managed workflow orchestration platform for reliable data and AI pipelines.
Latest Prefect changelog updates, official release notes, breaking changes, security patches, pricing changes, and developer reactions in one product feed.
Follow this Prefect release-notes page to spot useful features, risky migrations, noisy announcements, and source links before they hit your backlog.
Changes.Watch links back to official changelog and release-note sources so summaries stay easy to verify.
Use channels to follow groups of tools around a stack, workflow, or topic.
Rolling windows show how many product updates landed in the last 7, 30, 90, and 365 days, grouped by existing changelog semantics.
0
3
10
59
Optimize task run recorder bulk upserts and enable auto UV run launcher for process workers
Add removable chips for multi-select enum array fields and virtualize timezone select options
Add UI enhancements such as tooltips for flow‑run state tabs, support for arbitrary float precision in schema inputs, and rendering of ANSI color codes in V2 flow run logs.
Add deployment filters, copy‑to‑new‑run, clickable run‑log URLs, and make the V2 UI the default for self‑hosted servers; enhance date inputs and introduce Docker "IfPossible" pull policy and composable worker initializer for ProcessPoolT...
Format server‑side validation errors for concurrency slot acquisition and improve API request handling (reject both root and account, distinct 401/403 errors).
Added support for single‑step mappings in prefect.yaml actions, pull steps for module path entrypoints, and API logging of workspace resolver pull step logs.
Fixed bugs: PrefectFutureList return from Task.map, UI static dir race condition, clearer error for FlowRun/TaskRun args, duplicate Late state transition prevention, and quoting issues in work queue creation.
Added cancelling timeout cleanup producer and backend observability for worker channels/queues.
Added lifecycle event emission for all domain objects and introduced a Redis‑backed cleanup queue with reconciliation, dispatch, and perpetual service recovery.
Runner now disables automatic dependency installation for pulled‑code deployments; re‑enable via PREFECT_RUNNER_AUTO_INSTALL_DEPENDENCIES=true (opt‑in change).
Added delete flow run automation action and expanded worker channel capabilities (handshake, heartbeat, work‑pool snapshot, ready‑frame fix).
Added extensive worker channel improvements—including protocol contract, REST fallback client, cleanup executor, work‑pool snapshot handling, and timeout teardown cleanup
Promote infrastructure decorators and the plugin system to GA, allowing reusable run infrastructure and first‑class plugin configuration
Optimized flow run counting by replacing EXISTS with JOIN and added deadlock‑prevention ordering for TaskRunRecorder bulk upserts.
Fixed a security issue by correcting the DNS rebinding TOCTOU bypass in URL validation.
Added cascading cancellation for in‑process subflows, removed causal ordering from the task‑run recorder, and relaxed work‑pool storage CLI to accept ambient cloud credentials.
Added experimental configurable bundle launchers for work pool storage
Added configurable parameter size limits, separated lease‑renewal failure handling, and set worker attribution environment variables with improved remote‑worker logging.
Added a flow run watch command and with_context() for subprocess run context, plus BuildKit/buildx support and bounded queue handling for QueueService.
Add glob pattern support for event matching and module path entrypoints in deployments, plus new concurrency status endpoints, CLI commands, and active slots fields for work pools/queues.
Added Submitting and InfrastructurePending states, OS‑level resource metric collection, and end‑time filter support for flow and task runs.
Added optional JSON output to a wide range of CLI commands (flow ls, task run ls, work pool commands, block inspect, logs, etc.).
Migrated CLI to cyclopts, removing typer and reorganizing the CLI package
Add optional DB vacuum service that periodically deletes old flow runs and orphaned resources, with configurable retention and interval.
Added opaque annotation to prevent recursive task input traversal, worker‑only debug mode, and support for DateTimeDelta intervals.
Added several new features: server status CLI command, fail‑fast PrefectFutureList.result(), schedule slug renaming, SDK attribution headers, and a ResumeFlowRun automation action.
Added new Prefect Cloud asset list/delete commands, bulk operation endpoints for flows, deployments, and flow runs, and an SDK instrumentation module.
Fix PrefectCloudEventsClient authentication handshake that broke cloud connections.
Add TOML 1.0 parsing on Python 3.11+, IPv6 support for Prefect server start, and authentication to the /api/events WebSocket endpoint; also make runner cancellation health‑observing and reload root settings after plugins.
Move flow‑run heartbeat emission into the engine for more reliable heartbeats
Add httpx.ConnectError to client retry exceptions and introduce retry logic for PrefectEventSubscriber.
Introduce the beta `prefect sdk generate` CLI to create fully‑typed Python SDKs from deployments.
Added a Prefect automation update CLI command and upsertable global concurrency limit decay feature.
Add worker‑side cancellation for pending flow runs and introduce a JSON schema for prefect.yaml files, plus concurrent read/count queries in pagination endpoints.
Added flow run retry command and URL property to ReceivedEvent, expanding feature set
Add AWS IAM authentication for PostgreSQL and generic typing support for Variable.get
Added client‑side config for deployment concurrency grace period, PostgreSQL search‑path support, memory safeguards for event persister, and new perpetual Docket task infrastructure for services.
Update Docker tag for latest 2.x releases to fix tagging issues.
Added parameterization for batch sizes (xreadgroup, xautoclaim, TaskRunRecorder, Trigger) and introduced EventPersister service setting.
Update worker metadata to be compatible with Pydantic v1 for Prefect 2.x.
Fixed deployment trigger handling to preserve event template parameters.
Add a JSON output option to the `prefect flow run ls` command
Add causal link from automation action events to their triggering events
Added client methods for querying events via the REST API
Introduce pydocket, a new background‑task system with automatic retries and optional Redis backing, replacing FastAPI background tasks;
Drop Python 3.9 support (now requires Python ≥3.10) and remove deprecated Runner functionality and system Blocks, causing breaking changes.
Add Python 3.14 support and unify sync/async client methods
Added interleaved flow‑run event & log watching, shared WebSocket utilities (SSL/proxy), and an experimental plugin system.
Fixed test failures caused by recent Apprise and anyio updates.
Added client support for custom SSL contexts and a new `prefect api` CLI command for direct API access.
Fixed startup crashes with Pydantic 2.10 on Python 3.9/3.10
Added automatic local dependency discovery, support for serving instance methods, configurable lease timeout, and task run tags as related resources.
Introduced text‑search capability for events and logs filtering and added vertical scaling support for Prefect server workers.
- Added a V2 concurrency framework with a minimal V1→V2 adapter, global concurrency limits, GCL‑based task engine updates, and pagination support for lease storage; also split deploy.py into its own module.
Update Typer dependency version constraints
Added bulk pause/resume commands for deployment schedules and a holder parameter to V2 concurrency endpoints
Fix Distributor and LogDistributor execution in Prefect API servers.
Added deployment schedule handling, PostgreSQL version display, and robust SMB UNC path support in RemoteFileSystem.
Added `prefect event emit` CLI for emitting events, schedule‑after field for RunDeployment, metrics server on workers, and artifact created/updated events.
Added an Environment Migration command and a new ProcessPoolTaskRunner for parallel subprocess execution with full observability