run for all infrastructure types β https://github.com/PrefectHQ/prefect/pull/6654 INFO level for clarity β https://github.com/PrefectHQ/prefect/pull/6657 git to the Prefect image β https://github.com/PrefectHQ/prefect/pull/6653 PREFECT_TEST_MODE in PrefectBaseModel β https://github.com/PrefectHQ/prefect/pull/6647 .prefectignore paths on Windows β https://github.com/PrefectHQ/prefect/pull/6680 prefect version server type display β #6523 is_completed() β #6561 /flow_runs/filter endpoint β #6553 Task.map iterable detection to exclude strings and bytes β #6582 prefect block type ls β #6493 --skip-upload flag to prefect deployment build β #6560 --upload flag to prefect deployment apply β #6560 /block_document endpoints β #6541 π Improve Docker image tag parsing to support the full Moby specification β #6564
Set uvicorn --app-dir when starting Orion to avoid module collisions β #6547
π Resolve issue with Python-based deployments having incorrect entrypoint paths β #6554
π Fix Docker image tag parsing when ports are included β #6567
β‘οΈ Update Kubernetes Job to use args instead of command to respect image entrypoints β #6581
π Fix edge case in sync_compatible detection when using AnyIO task groups β #6602
β Add check for infrastructure and storage block capabilities during deployment build β #6535
π Fix issue where deprecated work queue pages showed multiple deprecation notices β #6531
π Fix path issues with RemoteFileSystem and Windows β #6620
Fix a bug where RemoteFileSystem.put_directory did not respect local_path β #6620
Task.map in docstring β #6579 Thanks to our external contributors!
Task.map in https://github.com/PrefectHQ/prefect/pull/6513 empirical_policy to flow run update route in https://github.com/PrefectHQ/prefect/pull/6486 Deployment objects in https://github.com/PrefectHQ/prefect/pull/6505 deployment build to raise an informative error if two infrastructure configs are provided in https://github.com/PrefectHQ/prefect/pull/6504 submit_run in https://github.com/PrefectHQ/prefect/pull/6453 get_run_logger receives context of unknown type in https://github.com/PrefectHQ/prefect/pull/6401 π The new, YAML-based deployment definition provides a simple, extensible foundation for our new deployment creation experience. Now, by popular demand, we're extending that experience to enable you to define deployments and build them from within Python. You can do so by defining a Deployment Python object, specifying the deployment options as properties of the object, then building and applying the object using methods of Deployment. See the documentation to learn more.
π Agents and work queues give you control over where and how flow runs are executed. Now, creating an agent (and corresponding work queue) is even easier. Work queues now operate strictly by name, not by matching tags. Deployments, and the flow runs they generate, are explicitly linked to a single work queue, and the work queue is automatically created whenever a deployment references it. This means you no longer need to manually create a new work queue each time you want to want to route a deployment's flow runs separately. Agents can now pull from multiple work queues, and also automatically generate work queues that don't already exist. The result of these improvements is that most users will not have to interact directly with work queues at all, but advanced users can take advantage of them for increased control over how work is distributed to agents. These changes are fully backwards compatible. See the documentation to learn more.
BaseModel subclasses as fields within blocks, resolving an issue with the ImagePullPolicy field on the KubernetesJob block in https://github.com/PrefectHQ/prefect/pull/6389 deployment build CLI in https://github.com/PrefectHQ/prefect/pull/6387 visit_collection to be a synchronous function in https://github.com/PrefectHQ/prefect/pull/6371 max_depth to visit_collection, allowing recursion to be limited in https://github.com/PrefectHQ/prefect/pull/6367 Full Changelog: https://github.com/PrefectHQ/prefect/compare/2.0.4...2.1.0
π The deployment experience has been refined to remove extraneous artifacts and make configuration even easier. In particular:
prefect deployment build no longer generates a manifest.json file. Instead, all of the relevant information is written to the deployment.yaml file.deployment.yaml file are more atomic and explicitinfra_overrides fieldπ Now, from the deployment page, in addition to triggering an immediate flow run with default parameter arguments, you can also create a custom run. A custom run enables you to configure the run's parameter arguments, start time, name, and more, all while otherwise using the same deployment configuration. The deployment itself will be unchanged and continue to generate runs on its regular schedule.
prefect flow-run lsπ This release contains a number of bug fixes and documentation improvements.
prefect-dbt π We've released prefect-dbt - a collection of Prefect integrations for working with dbt in your Prefect flows. This collection has been built as part of a partnership with dbt Labs to ensure that it follows best practices for working with dbt.
.prefectignore--manifest-only flag of prefect deployment build command to ensure that using this flag, the manifest gets generated, but the upload to a storage location is skipped.prefect deployment apply command.π This release implements a number of improvements and bug fixes in response to continued engagement by members of our community. Thanks, as always, to all who submitted ideas on how to make Prefect 2 even better.
.prefectignore files allow users to omit certain files or directories from their deployments. Similar to other .ignore files, the syntax supports pattern matching, so an entry of *.pyc will ensure all .pyc files are ignored by the deployment call when uploading to remote storage. Prefect provides a default .prefectignore file, but users can customize it to their needs.
deployment build CLI command.π The response to Prefect 2 has been overwhelming in the best way possible. Thank you to the many community members who tried it out and gave us feedback! Thanks in particular to the students at this week's Prefect Associate Certification Course (PACC) in San Jose for their thoughtful recommendations. This release is a compilation of enhancements and fixes that make for a more resilient, performant, and refined Prefect experience.
prefect deployment execute command has been removed to avoid confusion between running a flow locally from a Python script and running it by an agent using prefect deployment runscheduler and flow-run-notifications LoopServices have been made more resilientbase_pathdeployment build command now supports an optional output flag to customize the name of the deployment.yaml file, to better support projects with multiple flows