3.1.15 - The Numbers Are Made Up But The Features Are Real
Released on January 30, 2025 Enhancements ➕➕- Trims Redis streams periodically while consuming by @chrisguidry in #16844
- allow templating
schedulesinprefect.yamlby @zzstoatzz in #16867 - Add
run_flow_in_subprocessutility by @desertaxle in #16802 - expose ui/api urls in
prefect.runtime.task_runby @zzstoatzz in #16879 - Allow CLI to be invoked with
python -m prefectby @sky-code in #16790 - Add additional websocket debug logging by @jakekaplan in #16801
- Add additional
validation_aliastoSnowflakeConnectorby @desertaxle in #16854 - remove extra / old
prefect-daskusage docs by @zzstoatzz in #16872 - fix: check the type of dbt result when converting to markdown by @dominictarro in #16869
- Exclude
site-packagesfrom scanned dirs inprefect deployby @zzstoatzz in #16885 - Add missing overload for
Task.__call__by @desertaxle in #16891 - use task groups for concurrent queue consumers by @zzstoatzz in #16850
- Upgrades
kubernetes-asyncioversion by @jeanluciano in #16841 - Respect TLS_SKIP_VERIFY setting in websocket clients by @cicdw in #16908
- Add event resources to the event cleanup cycle by @NobisIndustries in #16907
- Add section on UI settings for proxies by @cicdw in #16912
- Update typer requirement from !=0.12.2,
<0.14.0,>=0.12.0to>=0.12.0,!=0.12.2,<0.16.0by @dependabot in #16205 - Fix async dispatch for
prefect_awstasks by @desertaxle in #16851 - Add
PrefectDbtSettingstoprefect-dbtby @kevingrismore in #16834 - Add support for secure Mattermost notifications by @sochotnicky in #16884
- Add
Flow.ato_deployment,Flow.afrom_source, andRunner.afrom_storageby @desertaxle in #16897 - Move
pyrightchecks to CI by @desertaxle in #16843 - rm deprecation warning for
schedulekey by @zzstoatzz in #16847 - Update CODEOWNERS for /docs by @aaazzam in #16880
- Fixes typing of
run_flow_in_subprocessby @desertaxle in #16883 - Remove
[@sync](https://github.com/sync)_compatiblefromprefect.artifactsby @desertaxle in #16877 - Update @prefecthq/prefect-ui-library to version 3.11.37 by @marvin-robot in #16894
- Update @prefecthq/prefect-ui-library to version 3.11.38 by @marvin-robot in #16905
- Introduces a
Servicebase class to cover loop and other services by @chrisguidry in #16898
- [Experimental] Enhancement: Lineage interface event names and context resource registration by @znicholasbrown in #16842
- [Experimental] Include tags as related resources on lineage events by @kevingrismore in #16895
3.1.14 - Addition by Subtraction
Released on January 23, 2025 Bug Fixes 🐞- respect
PREFECT_SERVER_LOGGING_LEVELinprefect server startby @zzstoatzz in #16765 - don’t make extra calls to cloud in
prefect dashboard openby @zzstoatzz in #16768 - Fix configuring loggers found in ‘PREFECT_LOGGING_EXTRA_LOGGERS’ by @estasney in #16652
- Ensure multiple
Inputscache policies are consolidated when used in aCompoundCachePolicyby @zzstoatzz in #16785 - Add missing function body import in client.find_automation by @aaazzam in #16824
- Add auth string handling to server side client by @cicdw in #16833
- Fix serialization for
FlowRunContextfor flow runs kicked off from a deployment by @desertaxle in #16831 - Fix subtraction logic on non-input cache policies by @cicdw in #16840
- fix block cli error messages by @aaazzam in #16787
- Fix typing of task decorator for retry_condition_fn argument by @peterbygrave in #16621
- typing
cli.deployby @zzstoatzz in #16767 - Fix all typing errors in
prefect.runner.runnerby @desertaxle in #16797 - Update @prefecthq/prefect-design to version 2.14.17 by @marvin-robot in #16830
- No transaction in
TaskRunRecorderby @zzstoatzz in #16829 - Fix script to run server with local telemetry by @zzstoatzz in #16794
- Add the ability to pass context into the flow run engine by @desertaxle in #16816
- Ensures that the Redis messaging implementation works with event clients by @chrisguidry in #16832
- start incremental
pendulumconsolidation by @zzstoatzz in #16808 - Add experimental function for connecting external lineage resources by @kevingrismore in #16820
- Adds
prefect-redisto the Prefect image by @chrisguidry in #16818 - Stop making useless query by @cicdw in #16837
- revamp integration contributor guide and clean up other sections by @zzstoatzz in #16757
- Update prefect-aws docs by @seanpwlms in #16639
- Fix work pool types link in
Schedule a flowtutorial by @kevingrismore in #16796 - Add mini-history of Prefect to the introduction page of the docs by @daniel-prefect in #16814
- Add first draft of Coiled content to deployment documentation by @mrocklin in #16805
- docs(managed): add additional published ips by @parkedwards in #16838
3.1.13 - type_all_the_things: bool = True
Released on January 17, 2025 We’re thrilled to announce a major milestone:prefect is now 100% type complete! 🎉 Every public interface in the library now includes comprehensive type annotations, bringing significant improvements to the developer experience. This means you’ll enjoy:
- Enhanced autocompletion in your IDE, helping you write code faster and with fewer errors
- Robust static analysis through tools like
mypyandpyright, catching potential issues before runtime - Clear, unambiguous type signatures that serve as living documentation for the entire codebase
- Allow servers to start with no background services by @cicdw in #16693
- Expose more SALAlchemy settings by @cicdw in #16742
- Create model for SQLAlchemy connection arguments by @cicdw in #16762
- Update SLA logic to use declarative endpoint by @dylanbhughes in #16755
- Add
prefect server servicesCLI commands by @zzstoatzz in #16706 - Add provisioner for Coiled push work pools by @ntabris in #16736
- Fix
SendgridEmailcode example by @jakekaplan in #16677 - Fix connection string handling when individual components are provided via settings by @desertaxle in #16680
- Handles the instrumentation case where a future is only used to
wait_forby @chrisguidry in #16709 - Fix bug where a server can’t be stopped and restarted without waiting several seconds by @desertaxle in #15729
- Fixes to Prefect Basic Auth by @cicdw in #16735
- Switch
drain_allcall to be called from new thread instead of global loop thread by @jeanluciano in #16739 - Ensures that
QueueServiceinstances are unique within types by @chrisguidry in #16751
- Remove DB interface from
_on_startby @cicdw in #16687 - Improve typing in
prefect.server.eventsby @desertaxle in #16692 - Improve type completeness of
prefect.server.servicesby @desertaxle in #16701 - Delete old create integrations cards script by @desertaxle in #16704
- Improve typing in
prefect.resultsby @desertaxle in #16714 - Improve typing in server events - part deux by @desertaxle in #16715
- Improve typing of
prefect.settingsby @desertaxle in #16719 - Task engine typing by @zzstoatzz in #16731
- Raise type completeness on
prefect.inputsto 100% by @desertaxle in #16740 - Raise type completeness to 95% by @desertaxle in #16723
- Raise type completeness of
prefect.serverto 100% by @desertaxle in #16729 - Raise type completeness to 99.8% by @desertaxle in #16734
- Add type completeness pre-commit hook by @desertaxle in #16744
- Add type hints to
CoiledPushProvisionerby @desertaxle in #16745 - Deprecate custom
JsonPatchimplementation by @desertaxle in #16743
- Improve the intro to the quickstart tutorial by @daniel-prefect in #16664
- Update Intros in Docs by @aaazzam in #16674
- Update index.mdx by @aaazzam in #16675
- Remove the promise that the quickstart only takes five minutes to complete by @daniel-prefect in #16669
- Update prefect-yaml.mdx by @adrianoresende in #16688
- Docs quickstart feedback by @kevingrismore in #16683
- Fix silly typo by @cicdw in #16703
- Move quickstart to immediately before the ‘schedule a flow’ tutorial in the docs by @daniel-prefect in #16705
- Add state transition table to ‘Manage states’ doc and link from the debug tutorial by @daniel-prefect in #16668
- Add an ML pipeline tutorial by @daniel-prefect in #16632
- Use Python 3.9 syntax and don’t test 3rd-party dependencies by @daniel-prefect in #16730
- Add in documentation for Service Level Agreements by @sam-phinizy in #16663
- Use the flow from the quickstart as the basis for the deployment in the scheduling tutorial by @daniel-prefect in #16721
- Add correct probe config to
gcloudexample command by @cicdw in #16738 - Docs: publish static outbound IP address for managed execution by @parkedwards in #16741
- Update settings docs with basic auth by @cicdw in #16753
3.1.12 - Winter Summit is Coming
Released on January 09, 2025 Please consider joining us virtually January 22-23 for our Winter Summit, where we’ll be giving some exciting updates on our OSS community growth along with customer stories and updates on Prefect’s roadmap! Check out the agenda and register here. Enhancements ➕➕- rm
sync_compatiblefrom automations SDK by @zzstoatzz in #16584 - Log failures to load flow with flow run logger by @cicdw in #16647
- Proposal: rename NONE cache_policy to NO_CACHE by @cicdw in #16650
- Reduces the minimum memory requirement for Prefect Server by @chrisguidry in #16644
- Reduces the memory requirement of a standalone Prefect server again by @chrisguidry in #16651
- Deployment SLA Definitions by @dylanbhughes in #16574
- Add work pool type to related resource by @jakekaplan in #16636
- fix redis link by @zzstoatzz in #16594
- consolidate hook calling in flow engine by @zzstoatzz in #16596
- handle setting
enforce_parameter_schemainprefect.yamlby @zzstoatzz in #16607 - call
FlowRunContext.model_rebuild()inhydrate_contextby @zzstoatzz in #16628 - Worker removes flow_run id if fails to submit. by @jeanluciano in #16561
- Update croniter requirement from
<6.0.0,>=1.0.12to>=1.0.12,<7.0.0by @dependabot in #16431
- server side type cleaning by @zzstoatzz in #16583
- Tune CI for efficiency by @desertaxle in #16631
- Add some tests for failure hooks and retries by @cicdw in #16642
- Improve typing in
prefect.blocksby @desertaxle in #16630 - Fix logging.yml comment by @estasney in #16634
- Refactor Deployment CRUD methods in client by @aaazzam in #16576
- Refactor Automations CRUD methods in client by @aaazzam in #16579
- cleanup a few refs by @aaazzam in #16586
- Refactor Flow and FlowRun CRUD methods in client by @aaazzam in #16581
- Refactor BlockType, BlockDocument, and BlockSchema CRUD methods in client by @aaazzam in #16587
- Remove import dregs from client by @aaazzam in #16604
- small type fixes by @zzstoatzz in #16646
- remove hardcoded docs link to localhost:3000 by @aaazzam in #16591
- Remove code snippet from docs homepage by @aaazzam in #16593
- remove some integrations from docs by @aaazzam in #16598
- docs intro by @aaazzam in #16601
- add main features to docs index by @aaazzam in #16603
- Install
otelextras in docker image and remove experimental flag setting by @bunchesofdonald in #16412 - Update docs nav first links order by @discdiver in #16624
- Update runner docstring for clarity of their universality by @cicdw in #16662
3.1.11 - Flow-verload
Released on January 02, 2025 Enhancements ➕➕- Sparse checkout for git pulls by @tetracionist in #15824
- Add a “limit” option prefect flow serve CLI by @pwl in #16527
- log rendered custom
flow_run_nameby @zzstoatzz in #16517 - Server should exit with non-0 on error by @martimors in #16476
- Private submodule support for
GitRepositoryby @jakekaplan in #16518 - Add support for
NO_PROXYfor websocket connections by @jbw-vtl in #16538 - Avoid
Pathinterpreting.in deployment names as the beginning of a file extension by @zzstoatzz in #16553 - Fix task overload for decorator kwargs by @zzstoatzz in #16540
- RunTelemetry start span uses run name instead of flow/task name by @jeanluciano in #16389
- Fix
TypeErrorinSnowflakeConnector.fetch_allby @zzstoatzz in #16511 - Fix
fetch_oneandfetch_manyinprefect-snowflakeby @zzstoatzz in #16554 - Add redis streams messaging to
redis-streamsby @zzstoatzz in #16432
- [typing] prefect.concurrency by @mjpieters in #16441
- [typing] prefect._internal, prefect.server.utilities by @mjpieters in #16497
- [typing] -
prefect.clipart 1 by @desertaxle in #16546 - Fix overloads for
wait_forandreturn_stateinTask.__call__by @zzstoatzz in #16547 - Add local-telemetry stack for investigating server performance by @zzstoatzz in #16483
- Refactor Client’s Artifact CRUD methods into Mixin by @aaazzam in #16496
- Refactor Variable CRUD methods in client by @aaazzam in #16564
- Refactor Log CRUD methods in client by @aaazzam in #16565
- Correct link to contribution guidelines by @jbw-vtl in #16539
- Label all resources in lineage events by @abrookins in #16471
- update readme by @zzstoatzz in #16519
- Remove deprecated result fields and classes and associated utilities by @cicdw in #16552
- Add typing to model_config by @aaazzam in #16562
- Refactor ConcurrencyLimit CRUD methods in client by @aaazzam in #16567
- Update snowflake integration docs by @seanpwlms in #16556
- feat: Updating tags and groups for ui-v2 dependabot by @devinvillarosa in #16499
3.1.10 - Not a CPU was stirring, not even in prod
Released on December 25, 2024 ‘Twas the night before Christmas, when through every cloud Not a CPU was stirring, not even in prod Bug Fixes 🐞- Remove FastAPI from prefect.flow’s default import path. by @aaazzam in #16473
- fix incorrect use of
getattrby @zzstoatzz in #16498
- [typing] misc prefect modules by @mjpieters in #16468
- [typing] update
prefect.futuresby @zzstoatzz in #16381 - Bump astral-sh/setup-uv from 4 to 5 by @dependabot in #16478
- address typing nits by @zzstoatzz in #16495
- Ensure client tests don’t run with SQLite by @desertaxle in #16488
- fix link to
servedocs by @zzstoatzz in #16475
3.1.9 - All I Want for Christmas is Queue
Released on December 20, 2024 Enhancements ➕➕- Log exceptions when run submission fails in both the runner and worker by @cicdw in #16424
- Refactor
prefect.flowdecorator by @mjpieters in #16405
- use correct async method on storage blocks by @zzstoatzz in #16445
- fix passing
enforce_parameter_schemainprefect deployby @zzstoatzz in #16418 - make
from_sourcesafe to use concurrently by @zzstoatzz in #16458 - pass auth headers to
/csrfby @aaazzam in #16464
- fix
MattermostWebhooktests by @zzstoatzz in #16433 - Add redis causal ordering implementation by @zangell44 in #16416
- Wrap
OTLPLogExporterandOTLPSpanExporterin aQueueServiceto pull them out of the main thread by @bunchesofdonald in #16439
- Update @prefecthq/prefect-ui-library to version 3.11.28 by @marvin-robot in #16437
- Update worker to use orchestration client for updating labels by @bunchesofdonald in #16426
- [typing] Remove overload from inject_client by @mjpieters in #16463
- [typing] prefect.exceptions by @mjpieters in #16456
- [typing] Annotate all getattr_migration callsites by @mjpieters in #16457
- [typing] clean up prefect init.py by @mjpieters in #16451
- Update @prefecthq/prefect-ui-library to version 3.11.30 by @marvin-robot in #16470
- Add an example for creating an automation to mark zombie flow runs as crashed by @desertaxle in #16425
- Add a tutorial showing how to set up an email alert in Prefect Cloud by @daniel-prefect in #16345
- Add tutorials to the overview page of the docs by @daniel-prefect in #16454
3.1.8 - A Tale of Two Features
Released on December 17, 2024 Runner Heartbeats for Flow Run Monitoring Flow runs can now emit heartbeat events to detect infrastructure failures (crashed machines, evicted containers, etc). When enabled, an automation can automatically mark flows as crashed when heartbeats stop, preventing stuck “zombie” flows in the running state. Enable with:- Set
PREFECT_RUNNER_HEARTBEAT_FREQUENCY(requires Prefect 3.1.8+) - Deploy the provided automation script to update flow states when heartbeats stop
- Add working implementation of basic auth to server and client by @cicdw in #16408
- Add basic auth UI by @aaazzam in #16411
- Enhance
Runnerto send heartbeat events for flow runs by @desertaxle in #16410
- add async redis client utils to
prefect-redisby @zzstoatzz in #16417
3.1.7 - Straight outta Half Moon Bay
Released on December 16, 2024 Enhancements ➕➕- Support http proxies for websockets by @jakekaplan in #16326
- update contributor dev instructions by @zzstoatzz in #16376
- Fix missing terminal state timings for TimedOut tasks by @GalLadislav in #16328
- Early error on bad retry delay types by @cicdw in #16369
- [typing] add overload for empty
[@task](https://github.com/task)decorator by @zzstoatzz in #16386 - Use
websocket_connectutility inSubscriptionsby @jakekaplan in #16388 - dont ask to confirm deletion of non-existent gcl by @zzstoatzz in #16379
- Add
Block.aloadmethod and remove[@sync](https://github.com/sync)_compatiblefromBlock.loadby @desertaxle in #16341 - Exclude UI v2 PRs from the release notes auto-generation by @desertaxle in #16344
- remove
sync_compatiblefromgit_cloneby @zzstoatzz in #16340 - [typing]
prefect.serializersby @desertaxle in #16331 - remove
sync_compatiblefromprefect.variablesby @zzstoatzz in #16349 - Consolidate use of
DateTimetoprefect.typesby @zzstoatzz in #16356 - Fix type analysis check for PRs from forks by @desertaxle in #16359
- improve
Dockerfilebuild time and add CI to catch future slow downs by @zzstoatzz in #16348 - Add buffer to type completeness check by @desertaxle in #16361
- only run docker build bench on push to main by @zzstoatzz in #16365
- [typing]
prefect.tasksandprefect.task_workerby @zzstoatzz in #16332 - update
entrypoint.shto useuvforEXTRA_PIP_PACKAGESby @zzstoatzz in #16291 - update example output for
prefect work-pool inspectby @zzstoatzz in #16378 - [typing] prefect.server.utilities.database by @mjpieters in #16368
- Pick up trace context from run labels by @bunchesofdonald in #16346
- Refactor db_injector decorator by @mjpieters in #16390
- Correctly maintain span hierarchy when instrumenting nested tasks/flows by @bunchesofdonald in #16384
- Remove missing page from the nav by @daniel-prefect in #16351
- Update flow run instrumentation to use
RunTelemetryclass by @jeanluciano in #16233 - Add experimental support for emitting lineage events by @abrookins in #16242
- update tutorial for clarity by @zzstoatzz in #16354
3.1.6 - list[type[Improvements]]
Released on December 11, 2024 This release begins a concerted effort to improve our public interface’s type completeness; we hope that this will make the experience of authoring Prefect flows within IDEs more robust and allow for better autocomplete. We welcome all contributions to this effort - follow along with this issue to get involved! Enhancements ➕➕- expose
job_variablesinruntime.flow_runby @zzstoatzz in #16124 - Add
aserveutility for serving multiple flows from an asynchronous context by @GitAlexxx in #15972 - Add work-pool id/name to labels donated by worker to flow run by @bunchesofdonald in #16252
- Raise informative errors when failing to bootstrap telemetry by @bunchesofdonald in #16253
- remove
sync_compatiblefrombuild_serverby @zzstoatzz in #16314
- Fix setting task states with duplicate timestamps by @GalLadislav in #16145
- fix
__getattr__conflict inprefect.docker.__init__by @zzstoatzz in #16172 - Fix result store serialization to include all necessary attributes by @desertaxle in #16189
- Support flow deletion in Prefect Python client by @paulusaptus in #16308
- bump required minor versions of core by @zzstoatzz in #16192
- Instrument task runs by @jeanluciano in #15955
- clean up repo root by @zzstoatzz in #16177
- rm discourse references by @zzstoatzz in #16176
- limit event name length by @zzstoatzz in #16097
- Add
from_profiles_ymlto dbtTargetConfigsby @kevingrismore in #16178 - Rename
prefect.server.database.migrationstoprefect.server.database._migrationsby @desertaxle in #16214 - Improve typing completeness of internal base models by @desertaxle in #16217
- update typing in
blocks.abstractandconcurrencyby @zzstoatzz in #16212 - strict type client modules by @zzstoatzz in #16223
- Bring ORM models and Alembic migrations in sync by @mjpieters in #16221
- Include info about registering built-in blocks by @pypae in #16244
- Move UI pre-commit hooks from
huskytopre-commitby @desertaxle in #16246 - make
flowandtaskdecorators pass strict typing by @zzstoatzz in #16251 - use
uvto install dependencies in theDockerfileby @zzstoatzz in #16235 - fruitful typing scouring by @zzstoatzz in #16255
- [typing] prefect.client by @mjpieters in #16265
- OTEL flow run context propagation with Labels by @jeanluciano in #16122
- Link Docker build
NODE_VERSIONto.nvmrcby @desertaxle in #16282 - fix typing and route in flow run logs download api ref by @zzstoatzz in #16281
- avoiding timing issue in flaky test by @zzstoatzz in #16275
- Add a new tutorial which shows how to debug a failing pipeline by @daniel-prefect in #16225
- Adds note to rate limits doc linking to client settings by @EmilRex in #16286
- [typing] fix typing related to
prefect.mainby @zzstoatzz in #16288 - 3.9 compat for
debug.mdxtutorial by @zzstoatzz in #16296 - Include more helpful output in type completeness check by @desertaxle in #16327
- Temporarily disable passing worker labels to flow run by @jakekaplan in #16339
- Add type completeness check to CI by @desertaxle in #16194
- improve typing of variables.py by @aaazzam in #16216
- Use SQLAlchemy 2.0 style for ORM models, make typing complete by @mjpieters in #16230
- [typing] highlighters.py by @aaazzam in #16259
- [typing] Update migration.py by @aaazzam in #16261
- [typing] effect by @aaazzam in #16266
- [typing] Use correct type narrowing construct by @mjpieters in #16269
- [typing] prefect.utilities by @mjpieters in #16298
3.1.5 - Like Leftovers, But Async (No More Pi)
Released on December 03, 2024 Enhancements ➕➕- allow filtering by flow run tags via
any_by @zzstoatzz in #16072 - migrate
prefect_aws.s3async tasks toasync_dispatchby @zzstoatzz in #16096 - Add debug log for global concurrency limit wait by @EmilRex in #16077
- Asyncify the flow run engine by @desertaxle in #16095
- Improve scheduled flows query by @desertaxle in #16132
- Fallback to default profile when profiles file is empty by @desertaxle in #16119
- Fix error when listing workspaces without an active workspace by @desertaxle in #16130
- fix ssl verify and update tests by @zzstoatzz in #16149
- Stop running all services in ephemeral app by @cicdw in #16120
- migrate
prefect_aws.client_waiteroffsync_compatibleby @zzstoatzz in #16082 - migrate
prefect_aws.lambda_functionoffsync_compatibleby @zzstoatzz in #16083 - revert
pydantic==2.10.0workaround given upstream fix by @zzstoatzz in #16087 - migrate
prefect_aws.secrets_manageroffsync_compatibleby @zzstoatzz in #16169
- [UI v2] Move delete variable mutation to variable hooks module by @desertaxle in #16141
- [UI v2] feat: Introducing declarative useSet custom hook and replacing selected tags state for this hook by @devinvillarosa in #16143
- [UI v2] feat: Use queryOptions API to define queries by @devinvillarosa in #16133
- [UI v2] dev: Adds tanstack query eslint rules and updates docs for variable mutations by @devinvillarosa in #16157
- Minor docs IA clean up by @daniel-prefect in #16073
- Implement
labelsfield on Flow, Deployment, FlowRun, and TaskRun by @bunchesofdonald in #16050 - Fix redirect by @discdiver in #16092
- Create
BaseFlowRunEngineandAsyncFlowRunEngineshell by @desertaxle in #16091 - [UI v2] Edit variables by @desertaxle in #16035
- [UI v2] Refactor parts of variables components by @desertaxle in #16084
- added noZoom tag to integration images by @markupboy in #16107
- [UI v2] feat: Adds tanstack query dev tools for development mode by @devinvillarosa in #16131
- [UI v2] feat: Have UX related mutation callbacks be handled in the UX layer by @devinvillarosa in #16136
- rm docs referencing
incidentsby @aaazzam in #16139 - [UI v2] feat: simplifies invalidating all variable queries by @devinvillarosa in #16140
3.1.4 - Schrödinger’s Labels
Released on November 21, 2024 Enhancements ➕➕- Omit empty tags in
RunnerDeploymentby @zzstoatzz in #16075
- Cast
None -> {}inKeyValueLabelsby @zzstoatzz in #16067 - Fix
pydantic==2.10compatibility by @zzstoatzz in #16076
- Update
prefectpin to>=3.1.3inprefect-awsby @zzstoatzz in #16064 - Update
AzureBlobStorageCredentialsto close default credentials when used as a context manager by @desertaxle in #16071
- New author tutorials by @daniel-prefect in #15990
- Update broken internal links in the docs by @discdiver in #16063
- Remove last remaining links to
/docs/3.0by @daniel-prefect in #16058
3.1.3 - Queue The Improvements
Released on November 19, 2024 Enhancements ➕➕- helpful error on unhashable parameters by @zzstoatzz in #16049
- Add
newaction toOpsGenieWebhookforapprise==1.9.0compatibility by @kevingrismore in #16030
- Adds a dead-letter queue to memory subscriptions to avoid infinite loops by @desertaxle in #16051
- make sure workers emit stop events by @zzstoatzz in #16002
- handle UNC paths for windows by @zzstoatzz in #16005
- fix worker not releasing limit slot on failed propose pending state by @jdjfisher in #16012
- refactor: gcp cloud run v2 extend env vars and fix cloud sql by @matmiad in #16026
- Fix env var deep merge order on worker by @kevingrismore in #16045
- Prevent workers from running flow runs scheduled for in process retry by @desertaxle in #15482
- fix:
prefect_redisuse ofasyncby @teocns in #15967 - Update croniter requirement from
<5.0.0,>=1.0.12to>=1.0.12,<6.0.0by @dependabot in #15856 - Add Flow run OTEL instrumentation by @collincchoy in #16010
- refactor
async_dispatchto enable forcing behavior for instance methods by @zzstoatzz in #15996 - Bump cross-spawn from 7.0.3 to 7.0.6 in /ui-v2 by @dependabot in #16048
- Update @prefecthq/prefect-design to version 2.14.10 by @marvin-robot in #16004
- Fix formatting for output file tree structure in customize.mdx by @discdiver in #16006
- Update @prefecthq/prefect-design to version 2.14.11 by @marvin-robot in #16028
- Remove experimental worker logs setting by @abrookins in #16024
- Update @prefecthq/prefect-ui-library to version 3.11.19 by @marvin-robot in #16029
- Update links in blocks to not point to docs from archived repositories by @discdiver in #16031
- Move installation notes to bottom of self-host doc by @jlowin in #16034
- Briefly explain how to update deployment with
prefect.yamlby @discdiver in #15812 - Bump tailwindcss from 3.4.14 to 3.4.15 in /ui by @dependabot in #16040
- Bump @vitejs/plugin-vue from 5.1.4 to 5.2.0 in /ui by @dependabot in #16039
- Bump vite from 5.4.10 to 5.4.11 in /ui by @dependabot in #16038
- Bump cross-spawn from 7.0.3 to 7.0.6 in /ui by @dependabot in #16047
- Bump vue from 3.5.12 to 3.5.13 in /ui by @dependabot in #16041
- Improve instructions for connecting to Cloud by @discdiver in #16037
- Update docs version selector and urls by @discdiver in #15923
- Update docs redirects and settings reference path by @discdiver in #16055
- fix agents -> workers doc examples that reference non-existent code by @zzstoatzz in #16052
- remove unused import by @zzstoatzz in #16061
- migrate
prefect_aws.batchoffsync_compatibleby @zzstoatzz in #16053 - Remove rc suffixes from all internal dependencies by @cicdw in #16018
- Remove Discourse from README by @olearycrew in #16023
- Categorize docs in release notes by @cicdw in #15997
- [UI v2] Fix tab order in variable create dialog by @desertaxle in #16014
- [UI v2] Setup Storybook by @evan-liu in #16003
- [UI v2] Variables table - part 1 by @desertaxle in #15985
- [UI v2] Variables table - part 2 by @desertaxle in #16025
3.1.2 - Bug Fixes, Chicago Style, Hold the Ketchup
Released on November 12, 2024 Bug Fixes 🐞- Fixes the arguments for the url generation in BaseWorker by @sam-phinizy in #15982
- Fix formatting of
listandsetsettings values when marshaling to environment variables by @GalLadislav in #15979 - fix delete block type prompt by @zzstoatzz in #15989
- Ensure
.envfiles load only Prefect environment variables by @desertaxle in #15975 - Fix bugs in precedence of settings sources for settings with multiple validation aliases by @desertaxle in #15995
- Persist failed data at random locations by @cicdw in #15991
- Fixes the worker url slug by @sam-phinizy in #15964
- Add in ability to pass additional formatting kwargs to
url_forby @sam-phinizy in #15974 - Fix the key for worker metadata: it’s is just “metadata” by @abrookins in #15965
- adopt
async_dispatchfor slack collection by @zzstoatzz in #15973
- Update @prefecthq/prefect-design to version 2.14.9 by @marvin-robot in #15961
- Update @prefecthq/prefect-ui-library to version 3.11.16 by @marvin-robot in #15956
- handle possible
Nonevalue by @zzstoatzz in #15966 - Add sidebar to v2 UI by @desertaxle in #15925
- [UI v2] Add ability to create new variables by @desertaxle in #15962
- update
asyncio_default_fixture_loop_scopein all collections by @zzstoatzz in #15976 - Update @prefecthq/prefect-ui-library to version 3.11.18 by @marvin-robot in #15994
- Update worker to give worker labels to flow runs during submittal by @bunchesofdonald in #15983
- clarify state hook docs by @zzstoatzz in #15977
- Fix documentation link to deployment concept by @sandertan in #15988
3.1.1 - Around the Codebase in 80 PRs
Released on November 08, 2024 Enhancements ➕➕- Hook
prefect-kubernetesinto setting framework by @desertaxle in #15888 - Enable PREFECT_PROFILES_PATH in source files by @GalLadislav in #15914
- Include worker ID with worker-originated flow run logs by @abrookins in #15941
- fix
wait_forforDaskTaskRunnerby @zzstoatzz in #15909 - fix extra loggers parsing by @zzstoatzz in #15913
- Fix
prefect config viewnot showing .env file settings by @GalLadislav in #15922 - fix sqlite migration by @zzstoatzz in #15917
- fix flow run graph endpoint for nested task runs by @jakekaplan in #15939
- Update typer requirement from !=0.12.2,
<0.13.0,>=0.12.0to>=0.12.0,!=0.12.2,<0.14.0by @dependabot in #15949 - Setup OpenTelemetry exporters when initializing prefect by @bunchesofdonald in #15946
- add internal
async_dispatchutil by @zzstoatzz in #15813 - Update @prefecthq/prefect-ui-library to version 3.11.14 by @marvin-robot in #15921
- Bump vue-tsc from 2.1.8 to 2.1.10 in /ui by @dependabot in #15916
- Begin replatform of UI to React by @desertaxle in #15907
- Set
COVERAGE_CORE=sysmonto speed up test on 3.12 by @desertaxle in #15905 - Update docs for task results persistence param by @frances720 in #15931
- Add in WorkerAPILogger and related functionality by @sam-phinizy in #15864
- Send worker metadata with first heartbeat by @abrookins in #15898
- Fix the direction of our integration string replacement by @abrookins in #15959
- Add in a link to the worker logs page by @sam-phinizy in #15958
3.1.0 - Configuro, ergo sum
Released on October 31, 2024 We’re excited to unveil a major overhaul of Prefect’s configuration system. At the heart of this release is a complete refactor of our settings architecture, now powered bypydantic-settings for enhanced organization and clarity. You can now define your settings in either a dedicated prefect.toml file or your existing pyproject.toml file, streamlining the configuration experience and making it more portable across environments.
To learn more about new settings capabilities, check out the updated settings documentation or watch @zzstoatzz’s instructional demo on YouTube.
New Features 🎉
- Add support for defining settings via a
prefect.tomlfile by @desertaxle in #15788 - Add support for defining settings via a
pyproject.tomlfile by @desertaxle in #15875
- Pass through kwargs for
run_shell_processby @zzstoatzz in #15817 - Remove
jit="off"setting for Postgres DBs by @desertaxle in #15854 - Add setting to allow turning off persistence for tasks globally by @desertaxle in #15881
- Don’t cache on any key computation errors and log for visibility by @cicdw in #15868
- Fix logging for FastAPI and Uvicorn by @desertaxle in #15871
- Allow for unpersisted 2.x result payloads in states by @cicdw in #15878
- Update
Settings.copy_with_updateto ignore sources when restoring default settings by @desertaxle in #15884 - Don’t reuse exception name in nested exception handling by @cicdw in #15894
prefect-dbt
Dependencies
- Update croniter requirement from
<4.0.0,>=1.0.12to>=1.0.12,<5.0.0by @dependabot in #15839 - Update @prefecthq/prefect-design to version 2.14.1 by @marvin-robot in #15834
- Update @prefecthq/prefect-ui-library to version 3.11.8 by @marvin-robot in #15835
- Update @prefecthq/prefect-design to version 2.14.2 by @marvin-robot in #15837
- Bump vue-tsc from 2.1.6 to 2.1.8 in /ui by @dependabot in #15819
- Bump vite from 5.4.9 to 5.4.10 in /ui by @dependabot in #15820
- Update @prefecthq/prefect-design to version 2.14.3 by @marvin-robot in #15844
- Update @prefecthq/prefect-ui-library to version 3.11.11 by @marvin-robot in #15887
- Update @prefecthq/prefect-design to version 2.14.4 by @marvin-robot in #15852
- Update @prefecthq/prefect-ui-library to version 3.11.12 by @marvin-robot in #15891
- Add opentelementry requirements by @bunchesofdonald in #15867
- Remove old GitHub Actions workflow by @zzstoatzz in #15822
- Fix sorting of tags to determine nightly release version by @desertaxle in #15825
- Add
prefect.tomlto.gitignoreby @zzstoatzz in #15846 - Fix non
soft_wraplink inprefect block registerby @zzstoatzz in #15876 - Moves
experimental_warnsetting toexperimentsmodel and removesasync_fetch_state_resultby @desertaxle in #15885 - Fix documentation link to task settings by @jmbhughes in #15809
- Serve in container docs by @zzstoatzz in #15814
- Update mermaid.js diagram styling in docs by @discdiver in #15811
- Fixes broken image links in ACI worker guide by @discdiver in #15831
- Add in a settings.experiments module by @sam-phinizy in #15845
- Auto-generate settings reference documentation by @desertaxle in #15830
- Update ‘Configure settings and profiles’ documentation to include
prefect.tomlsupport by @desertaxle in #15847 - Adds in the ability for the client to get a remote_id from the server by @sam-phinizy in #15849
- Adds in the worker_id to the LogCreate schema by @sam-phinizy in #15851
- Fix errors in markdown and codspeed workflows by @desertaxle in #15841
- Remove
max_active_runsandcatchupfields by @zzstoatzz in #15810 - Use released version of
pytest-markdown-docsby @bunchesofdonald in #15808 - Update GitHub actions versions and formatting in CI/CD deploy docs page by @discdiver in #15667