3.0.11 - Thread Carefully
Released on October 25, 2024 Enhancements ➕➕- Add setting to configure default max workers for ThreadPoolTaskRunnerby @soamicharan in #15719
- Improve handling of interrupts to serveby @zzstoatzz in #15727
- Checks for active workers when deploying by @jeanluciano in #15632
- Highlight Cachedstate in console logs by @zzstoatzz in #15801
- Fix origin repo check that bypasses Docker Login on PRs originating from forks by @kzvezdarov in #15724
- Fix capture of pod logs for run_namespaced_jobby @zzstoatzz in #15732
- Add /apitoPREFECT_UI_API_URLin default case by @zzstoatzz in #15736
- Pass lowercase log level to uvicorn server by @gigaverse-oz in #15680
- Fix handling of Dask DataFrame and other Awaitables passed to run_coro_as_syncby @kzvezdarov in #15687
- Wraps run_dbt_functions insync_compatibleby @EmilRex in #15740
- Fix custom task run name rendering by @zzstoatzz in #15773
- Fix incorrect import in agents to workers guide by @zzstoatzz in #15789
- Soft wrap deployment link by @zzstoatzz in #15787
- Fix worker filter param by @zangell44 in #15804
- Include env defaults from variables.properties.envin deep merge by @kevingrismore in #15692
- Fix wrong exception in lazy import getattr by @protagonyist in #15741
- Set minimum version of pydantic-settingsby @zzstoatzz in #15797
prefect-gcp
prefect-dbt
- Fix dbt CLI argument parsing for multipart commands by @e1337us3r in #15714
prefect-kubernetes
- Avoid crashing flows when job watch exits but container is still running by @soamicharan in #15728
- Add _request_timeoutto Kubernetes watches by @kevingrismore in #15744
- Create settings models for CLI and client settings by @desertaxle in #15640
- Create settings models for cloud, deployments, and logging by @desertaxle in #15749
- Create settings models for flows, results, and runners by @desertaxle in #15754
- Create server settings models by @desertaxle in #15758
- Create settings submodules by @desertaxle in #15772
- Create settings models for services, events, tasks, and the flow run graph by @desertaxle in #15776
- Create worker, tasks, testing, and UI settings models by @desertaxle in #15784
- Fix failing work queue test by @desertaxle in #15709
- Split out runner and worker tests to avoid hanging test suite by @desertaxle in #15715
- Only authenticate with Docker when running on a branch by @desertaxle in #15708
- Give more time for integration serve flow by @zzstoatzz in #15720
- De-flake serve integration test by @zzstoatzz in #15726
- Add code coverage generation and upload for Python tests by @desertaxle in #15690
- Remove setuptoolsand updatepippin in Docker build by @desertaxle in #15759
- Improve map typing by @zzstoatzz in #15757
- Ignore errors when cleaning up after deploy integration test by @desertaxle in #15768
- Disable automatic markdown tests by @zzstoatzz in #15782
- Fix typing for triggers schemas by @zzstoatzz in #15792
- Update instructions on bug report issue template by @desertaxle in #15795
- Format example code in README.mdby @zzstoatzz in #15807
- Fix typo in prefect-databricks by @aaazzam in #15800
- Fix links to 3.0 docs that are missing a leading slash by @sam-phinizy in #15704
- Add a few notes to Docker docs page by @discdiver in #15706
- Improve table formatting in docs by @discdiver in #15700
- Fix docs links for integrations by @discdiver in #15702
- More accessible wording for job variable overrides docs by @zzstoatzz in #15669
- Fix automation-assement.pyby @jakekaplan in #15710
- Give more time for state to integration flow to finish by @jakekaplan in #15723
- Fix a few spelling issues in docs by @discdiver in #15737
- Updated Docker push step in docs by @zzstoatzz in #15748
- Clear up namespace selection in Kubernetes guide by @zzstoatzz in #15765
- Update Docker image reference in aci_worker docs page by @discdiver in #15745
- Fix minor typo on “Deploy overview” page. by @Noah-Haf in #15771
- Add note about schedule kwargs change from 2.x to 3.x by @zzstoatzz in #15803
- Update @prefecthq/prefect-ui-library to version 3.11.3 by @marvin-robot in #15717
- Update @prefecthq/prefect-ui-library to version 3.11.4 by @marvin-robot in #15738
- Update @prefecthq/prefect-ui-library to version 3.11.7 by @marvin-robot in #15756
- Update @prefecthq/prefect-design to version 2.13.3 by @marvin-robot in #15721
- Update @prefecthq/prefect-design to version 2.13.4 by @marvin-robot in #15742
- Update @prefecthq/prefect-design to version 2.13.5 by @marvin-robot in #15785
- Update @prefecthq/prefect-ui-library to version 3.11.5 by @marvin-robot in #15743
- Update @prefecthq/prefect-ui-library to version 3.11.6 by @marvin-robot in #15746
- Bump tailwindcss from 3.4.13 to 3.4.14 in /ui by @dependabot in #15767
- Bump vite from 5.4.8 to 5.4.9 in /ui by @dependabot in #15766
3.0.10 - Serve returned
Released on October 15, 2024 This release fixes an issue where served flows would exit early and continues our reorganization of settings withpydantic-settings.
Bug Fixes 🐞
- Fix bug where .serveexits early and add integration test by @zzstoatzz in #15691
- Add APISettingssetting group by @desertaxle in #15701
3.0.9 - There’s no place like home
Released on October 15, 2024 Enhancements ✨- dont ask to confirm non-existent deployment by @zzstoatzz in #15653
- create PREFECT_HOMEinroot_settings_contextby @zzstoatzz in #15696
- correctly await config.load_kube_configby @zzstoatzz in #15655
- Do not delete flow runs awaiting retry on deployment changes by @kevingrismore in #15688
- Ensure TaskWorkercreates aanyio.TaskGroupin anasynccontext by @desertaxle in #15684
- Add tests to verify all settings via environment variables by @desertaxle in #15657
- Update versioneer.pyto ignore uncommitted changes by @desertaxle in #15672
- Bump vue from 3.5.10 to 3.5.12 in /ui by @dependabot in #15675
- Add tests for specifying each setting via a profile by @desertaxle in #15670
- Add tests to verify all supported settings can be set via a .envfile by @desertaxle in #15682
- Update @prefecthq/prefect-ui-library to version 3.11.2 by @marvin-robot in #15695
- Bump typescript from 5.6.2 to 5.6.3 in /ui by @dependabot in #15676
- Update @prefecthq/vue-compositions to version 1.11.5 by @marvin-robot in #15699
- remove note from 3.x docs about using pydantic<2by @zzstoatzz in #15642
- Update reference to name of profile in example by @discdiver in #15644
- follow on suggestion: simplify phrasing by @zzstoatzz in #15651
- Edits to dbt integration page by @discdiver in #15540
- Minor updates to deploy overview by @discdiver in #15606
- chore: update secret ref by @jamiezieziula in #15641
- Add link to release notes on What’s new docs page by @discdiver in #15662
- Docs note about accessing flow run logs by @EmilRex in #15683
3.0.8 - Revert a settings bug
Released on October 10, 2024 This release reverts a change that caused a loss of “set” environment variables in runtime environments.- Revert “Create APISettingsto group to group API-specific client settings” by @zzstoatzz in #15648
3.0.7 - Version of a down bug
Released on October 10, 2024 This release includes a couple of bug fixes, including a fix for generating the Docker image name for the installed version ofprefect.
Enhancements ➕➕
- Link to docs on starting temporary server by @zzstoatzz in #15636
- Fix PagerDuty notification formatting by @kevingrismore in #15584
- Fix version parsing error when generating Docker image name by @zzstoatzz in #15638
- Use the recommend approach for shallow dumping pydanticmodels by @zzstoatzz in #15634
- Add note about actively developed version to enhancement request form by @zzstoatzz in #15600
- Create APISettingsto group to group API-specific client settings by @desertaxle in #15580
- Update image in Quickstart by @discdiver in #15635
3.0.6 - Client, know thyself
Released on October 09, 2024 This update focuses on fixingprefect-client compatibility checks. Key changes include adding version information to prefect-client and adjusting task logging levels.
Enhancements ➕➕
- Updated task creation and submission log level to DEBUGby @zzstoatzz in #15631
- Eliminated date range filter from Flow page by @dylanbhughes in #15630
- Accurately populate __version__forprefect_clientby @desertaxle in #15624
- Maintain typing information in PrefectFutureby @zzstoatzz in #15625
3.0.5 - Take care of the .environment
Released on October 08, 2024 This release introduces support for loading settings from.env files, offering greater flexibility and ease of use in managing your Prefect configurations between projects.
New Features 🎉
- Allow specifying settings overrides in a .envby @zzstoatzz in #15565
- Update settings to use pydantic-settingsby @zzstoatzz in #15412
- Add a helpful message on 404 with deployment by name by @zzstoatzz in #15578
- Changed TaskSourcekey computation to handleOSError("source not available")by @kzvezdarov in #15583
- Fail correctly if lookup_typethrows aKeyErrorinBaseResult.__new__by @zzstoatzz in #15596
- Fix issue where transaction parent look up fails in rollback hooks by @desertaxle in #15599
- Fix flow run parameters literally named keysby @zzstoatzz in #15611
- Ensure dynamic default values for settings are considered unset by pydanticby @zzstoatzz in #15613
- Fix errors when using run_deploymentby @zzstoatzz in #15615
- Fix errors loading settings when profiles file can’t be read by @desertaxle in #15602
- Make database parameter optional in ConnectionComponents#15511 by @Ben-Taarit in #15553
- Update AwsClientParametersvalidation forverifyby @zzstoatzz in #15574
- Fix check to prerelease tag to allow nightly builds to publish Docker images by @desertaxle in #15563
- Update format for nightly dev release names by @desertaxle in #15568
- Add a note that deployments delegate ACLs to work pools by @abrookins in #15383
- Remove awaitfor task submissions in global concurrency limits example by @biancaines in #15581
- Flow code storage docs improvements by @discdiver in #15519
- Update the store flow code docs by @discdiver in #15604
- Update first docs example by @discdiver in #15605
- Add documentation for .envfile support by @zzstoatzz in #15617
- Update @prefecthq/prefect-design to version 2.13.2 by @marvin-robot in #15579
- Update @prefecthq/prefect-design to version 2.13.1 by @marvin-robot in #15576
3.0.4 - It’s been.. one week since you updated me
Released on October 01, 2024 Enhancements ➕➕- update prefect deployment lsto show work pool by @zzstoatzz in #15454
- Add —collision-strategy to prefect deployCLI. by @collincchoy in #15468
- Don’t prompt custom image build for managed pools in prefect deployby @zzstoatzz in #15484
- Deploy docs overview improvements by @discdiver in #15494
- Enforces deployment concurrency with orchestration polices. by @jeanluciano in #15504
- add get_current_workspacecloud client method by @zzstoatzz in #15542
- Enhancement: Add end_timeto flow run filters by @znicholasbrown in #15502
- Write raw results from flows by @desertaxle in #15434
- Update transactioncontext manager to defaultwrite_on_committoTrueby @desertaxle in #15515
- Use correct JSON schema dialect for param validation by @GfxKai in #15483
- Fix block reference load in async flow by @GalLadislav in #15487
- Add regression test for arbitrary state data by @desertaxle in #15506
- Update tasks to inherit the lock manager from a parent transaction if present by @desertaxle in #15505
- override _coerce_envfor k8s worker by @zzstoatzz in #15522
- Bumps pytestandpytest-asyncioto the latest versions by @chrisguidry in #15523
- Avoid shutting down Ray driver when running on a Ray worker by @desertaxle in #15552
- Fix dbt source freshness fail state by @e1337us3r in #15510
- Allow oracle connection urls by @zzstoatzz in #15496
- Use ConnectionComponentscomponents fromprefect-sqlalchemyinprefect-dbtby @westford14 in #15499
- Improve docstring state.resultfor when used withrun_deploymentby @benjamincerigo in #15509
- Fix use of deprecated field on websockets.exceptions.ConnectionClosedErrorby @desertaxle in #15467
- Set up pytest-markdown-docs for documentation testing by @bunchesofdonald in #15457
- fix test by @zzstoatzz in #15480
- one small type fix by @zzstoatzz in #15479
- use internal logger for get_lost_followersretries by @zzstoatzz in #15518
- Update weekly RC workflow to a nightly development workflow by @desertaxle in #15545
- add note on terminal unawaited coro by @zzstoatzz in #15439
- Add docs on securing webhooks with service accounts by @bunchesofdonald in #15481
- Fix README code example by @OverShifted in #15492
- Fixes ugly table formatting from bash output in docs by @discdiver in #15495
- Update global concurrency limits docs for removed create_if_missing behavior by @collincchoy in #15517
- Warn if websocket connection can’t be made by @jakekaplan in #15261
- Fix flow typing when passing return_state to a coroutine by @williamjamir in #15528
- Docs for deployment concurrency limits by @collincchoy in #15527
- Fix automations-triggers doc tests by @bunchesofdonald in #15514
- Remove worker and runner handling for deployment concurrency by @jeanluciano in #15497
3.0.3 - Cache Rules Everything Around Me
Released on September 20, 2024 This release introduces improvements to cache policy configuration, offering developers more control and flexibility in managing task result caching:- Customizable Storage Location: Specify where cache entries are stored using the key_storageparameter.
- Configurable Isolation Level: Set the isolation level for cache access with the isolation_levelparameter.
- Locking Mechanism: Implement concurrent access control using the lock_managerparameter.
- Add key_storage,isolation_levelandlock_managerconfiguration to cache policies by @desertaxle in #15382
- Adds settings to control server CORS configuration by @desertaxle in #15396
- Add ability to specify ConcurrencyOptionsby @jeanluciano in #15291
- Add concurrency_limitfield toflow.serveby @jeanluciano in #15376
- Allow a rich object to be passed to concurrency_limitin client methods by @jeanluciano in #15425
- Add support for insecure webhooks by @westford14 in #15402
- Improve deployment concurrency GCL management by @collincchoy in #15426
- Preserve flow.namewithRunnerDeployment.from_storageby @zzstoatzz in #15393
- Lazy import rayto fix server startup issues by @desertaxle in #15392
- Handle unnamed lambdas for consistency by @zzstoatzz in #15400
- Fix task linking by @desertaxle in #15418
- Fix ephemeral server start command for Windows by @desertaxle in #15421
- Fix task run count when a task is configured with retry_delay_secondsby @desertaxle in #15424
- Fix bug where task cache storage is misconfigured by @desertaxle in #15433
- Update task engine to increment run_countwhen enteringRUNNINGstate by @desertaxle in #15436
- Add environment variables from GCP secrets to cloud run job v2 workers by @Ultramann in #15423
- Prepare prefect-redisfor0.2.0release by @desertaxle in #15409
- Add AzureBlobStorageContainer.list_blobsmethod by @westford14 in #15390
- Add oracledbdriver support inprefect-sqlalchemyby @Ben-Taarit in #15385
- Add docs for configuring storage and isolation for cache policies by @desertaxle in #15397
- Improve type hinting docs for sync_compatible by @benjamincerigo in #15327
- Refactors __add__and__sub__on cache policies by @desertaxle in #15379
- Add mypytype checking to/modelsby @bunchesofdonald in #15062
- Only load collections once by @abrookins in #15344
- Bump vue from 3.5.4 to 3.5.5 in /ui by @dependabot in #15386
- Bump typescript from 5.5.4 to 5.6.2 in /ui by @dependabot in #15387
- Bump tailwindcss from 3.4.10 to 3.4.11 in /ui by @dependabot in #15388
- Bump vite from 5.4.2 to 5.4.5 in /ui by @dependabot in #15372
- Bump vue-router from 4.4.3 to 4.4.5 in /ui by @dependabot in #15389
- Update @prefecthq/prefect-ui-library to version 3.9.5 by @marvin-robot in #15411
- Bump vite from 5.4.5 to 5.4.6 in /ui by @dependabot in #15410
- Update @prefecthq/prefect-ui-library to version 3.10.0 by @marvin-robot in #15419 Full Changelog: https://github.com/PrefectHQ/prefect/compare/3.0.2…3.0.3
3.0.2 - Groundlog day, tomorrow finally came
Released on September 13, 2024 New Features 🎉- Add a ResumeFlowRun automations action by @abrookins in #15269
- Notification security controls by @cicdw in #15272
- Create FilesystemLockManagerby @desertaxle in #15307
- Concurrency limit UX enhancements: add strictmode by @cicdw in #15297
- Make prefect_test_harnessstartup timeout configurable by @desertaxle in #15354
- Fix deployment-concurrency-limiting-GCL lifecycle management by @collincchoy in #15365
- Runnerenforces- Deployment.concurrency_limitby @jeanluciano in #15085
- Disable HTTP2 by default by @zangell44 in #15311
- Move expensive filter to AND by @cicdw in #15286
- Fix deep merge for existing envon work-pools by @zzstoatzz in #15325
- Ensure all tags are used in concurrency limiter by @cicdw in #15349
- Set propagate to false for extra loggers by @cicdw in #15348
- Allow child transactions to access parent values set after child transaction opens by @desertaxle in #15342
- Fix resolution of implicit relative import when using safe_load_namespaceby @desertaxle in #15358
- Correctly handles recurring automations and future events by @chrisguidry in #15355
- reintroduce job model for prefect-databricksby @zzstoatzz in #15313
- Update DbtCoreOperationdocstring by @zzstoatzz in #15317
- Move import from googleinto import guard by @desertaxle in #15334
- fix S3Bucket.download_object_to_pathby @zzstoatzz in #15293
- Fix issue where DaskTaskRunnerwas attempting to create a duplicate cluster by @desertaxle in #15341
- Add dedicated enhancements section by @cicdw in #15265
- Fix labeler job by @cicdw in #15114
- Update @prefecthq/prefect-ui-library to version 3.8.2 by @marvin-robot in #15283
- Refactor some concurrency utilities to be sync_compatible by @cicdw in #15273
- Add some more nuance to labeler by @cicdw in #15288
- Use ResultStoreby default for task transactions by @desertaxle in #15264
- Update @prefecthq/prefect-ui-library to version 3.8.3 by @marvin-robot in #15305
- Remove feature flag for nested task runs on the run graph by @pleek91 in #15304
- Add deprecation warnings to all RecordStoreimplementations by @desertaxle in #15314
- Remove some ancient deprecations by @cicdw in #15310
- Update @prefecthq/prefect-ui-library to version 3.9.1 by @marvin-robot in #15335
- Replace RedisRecordStorewithRedisLockManagerby @desertaxle in #15320
- Add deprecation warnings to results classes and methods by @desertaxle in #15323
- Update @prefecthq/prefect-ui-library to version 3.9.2 by @marvin-robot in #15346
- Update @prefecthq/prefect-ui-library to version 3.9.4 by @marvin-robot in #15356
- Bump vue from 3.4.38 to 3.5.4 in /ui by @dependabot in #15306
- Bump @vitejs/plugin-vue from 5.1.2 to 5.1.3 in /ui by @dependabot in #15173
- Bump vue-tsc from 2.0.29 to 2.1.6 in /ui by @dependabot in #15281
- Update transactions docs by @discdiver in #15299
- Add unit test for accessing selfas normal arg when setting task run name by @jlowin in #15324
- add for_eachtrigger example by @zzstoatzz in #15326
- Update logging.mdx to fix title display by @discdiver in #15360
- quote type checked value by @zzstoatzz in #15362
- fix: move the github conditional to the appropriate level by @jamiezieziula in #15366
- Fix broken image link and update formatting in prefect-dbt by @discdiver in #15367
- Update integrations docs by @zzstoatzz in #15303
- Rewrite block page in docs by @cicdw in #15254
- chore: only trigger helm release workflows on 3.x.x version releases by @jamiezieziula in #15268
- better common error section by @zzstoatzz in #15271
- fix inconsistent word in upgrade guide by @zzstoatzz in #15277
- Minor edits to the upgrade and what’s new docs by @discdiver in #15285
3.0.1 - The Director’s Cut
Released on September 06, 2024 This release contains a large collection of relatively small improvements and bug fixes on the back of our major 3.0.0 release. One particular set of improvements that I’d like to focus on are enhancements to server side logging and event handling. We received a few reports of task run states not showing up in the UI/API. It’s important to note that events - and now task run states! - require a websocket connection to the API (the good news is that this will not disrupt workflow execution). Websockets are sometimes blocked by default in firewalls and network configuration, so we are working to raise failures to establish such a connection more prominently and potentially allow for alternative configurations. If you notice any issues with this, please let us know! Enhancements ➕➕- update prompt_select_from_tableby @zzstoatzz in #15202
- Adds ability to write result metadata separate from data when using ResultStoreby @desertaxle in #15214
- Remove CausalOrderingfromtask-run-recorderby @jakekaplan in #15244
- Disable griffe logging entirely when used by @cicdw in #15193
- Allow using a ResultStorewith aTransactionby @desertaxle in #15247
- Introduce LockManagerprotocol and add locking abilities toResultStoreby @desertaxle in #15225
- check api compatibility when entering a client context by @jakekaplan in #15252
- Add debug logging for server side event handling by @jakekaplan in #15245
- Fix task key comp by @cicdw in #15190
- Fix for Github clone on Windows by @WWM-jschuba in #15143
- remove duplicate pull_codeinstruction by @zzstoatzz in #15215
- add function name to prefect-dockercache key by @zzstoatzz in #15262
- Deployment.concurrency_limit cannot be zero. by @collincchoy in #15228
- Add KeepAliveClientRequestclass for k8s async client by @kevingrismore in #15220
- Kubernetes worker uses enable_socket_keep_aliveby @jeanluciano in #15142
- prefect-kubernetes: add missing config loaders by @srsapient in #15209
- fix prefect-azuretests by @zzstoatzz in #15211
- Fix test flake and add uvdev dependency by @cicdw in #15251
- Fix release pipeline for integration packages by @desertaxle in #15189
- Touch up variable class inheritance by @cicdw in #15188
- Update @prefecthq/prefect-ui-library to version 3.8.1 by @marvin-robot in #15243
- Fix test failures for pydantic==2.9.0by @desertaxle in #15249
- use is notfor type comparison instead of!=by @zzstoatzz in #15253
- Updates the worker integration tests for post-GA by @chrisguidry in #15199