Releases: PrefectHQ/prefect
Releases · PrefectHQ/prefect
Bug fixes and performance improvements
0.7.1
Released on Nov 5, 2019
Features
- None
Enhancements
- Add a
save
/load
interface to Flows - #1685, #1695 - Add option to specify
aws_session_token
for theFargateTaskEnvironment
- #1688 - Add
EnvVarSecrets
for loading sensitive information from environment variables - #1683 - Add an informative version header to all Cloud client requests - #1690
- Auto-label Flow environments when using Local storage - #1696
- Batch upload logs to Cloud in a background thread for improved performance - #1691
- Include agent labels within each flow's configuration environment - #1671
Task Library
- None
Fixes
- Fix Fargate Agent access defaults and environment variable support - #1687
- Removed default python version for docker builds - #1705
- Attempt to install prefect in any docker image (if it is not already installed) - #1704
- Kubernetes Agent deployment yaml now respects new
prefecthq/prefect
image tagging convention - #1707
Deprecations
- None
Breaking Changes
- None
Contributors
- None
To Affinity and Beyond
0.7.0
Released on October 29th, 2019.
Features
- Flow Affinity: Environments and Agents now support labeling for execution specification - #1651
- Add new Secret Tasks for a pluggable and reusable Secrets API - #1346, #1587
Enhancements
- Add the ability to delete task tag limits using the client - #1622
- Adds an "Ask for help" button with a link to the prefect.io support page - #1637
- Reduces the size of the
prefecthq/prefect
Docker image by ~400MB, which is now the base Docker image used in Flows - #1648 - Add a new healthcheck for environment dependencies - #1653
- Add default 30 second timeout to Client requests - #1672
Task Library
- Add new Secret Tasks for a pluggable and reusable Secrets API - #1346, #1587
- Add support for directly passing credentials to task library tasks, instead of passing secret names - #1667
Fixes
- Fix defaults for unspecified ARNs in the Fargate Agent - #1634
- Fix ShellTask return value on empty stdout - #1632
- Fix issue with some Cloud Secrets not being converted from strings - #1655
- Fix issue with Agent logging config setting not working - #1657
- Fix issue with SnowflakeQuery tasks not working - #1663
Deprecations
- Tasks that accepted the name of a secret (often
credentials_secret
) will raise a deprecation warning - #1667
Breaking Changes
- Fargate Agent now takes in all boto3 camel case arguments instead of specific snake case options - #1649
kubernetes
is no longer installed by default in deployed flow images - #1653- Tasks that accepted the name of a secret (often
credentials_secret
) no longer have a default value for that argument, as it has been deprecated - #1667
Contributors
Oh Six Seven
Changelog
0.6.7
Released on Oct 16, 2019
Features
- Environments now allow for optional
on_start
andon_exit
callbacks - #1610
Enhancements
- Raise more informative error when calling
flow.visualize()
if Graphviz executable not installed - #1602 - Allow authentication to Azure Blob Storage with SAS token - #1600
- Additional debug logs to
Docker Container
andDocker Image
tasks - #920 - Changes to Fargate agent to support temporary credentials and IAM role based credentials within AWS compute such as a container or ec2 instance. #1607
- Local Secrets set through environment variable now retain their casing - #1601
- Agents can accept an optional
name
for logging and debugging - #1612 - Added AWS configuration options for Fargate Agent (task_role_arn, execution_role_arn) - #1614
- Change EmailTask to accept SMTP server settings as well as an email_from kwarg - #1619
Task Library
- Add
return_all
kwarg toShellTask
for optionally returning all lines of stdout - #1598 - Add
CosmosDBCreateItem
,CosmosDBReadItems
,CosmosDBQueryItems
and for interacting with data stored on Azure Cosmos DB - #1617
Fixes
- Fix issue with running local Flow without a schedule containing cached tasks - #1599
- Remove blank string for
task_run_id
in k8s resource manager - #1604 - Fix issue with merge task not working for pandas dataframes and numpy arrays - #1609
Deprecations
- None
Breaking Changes
- Local Secrets set through environment variable now retain their casing - #1601
Contributors
Wait for it...
0.6.6
Released on October 3, 2019
Features
- Added
KubernetesJobEnvironment
- #1548 - Add ability to enforce Task concurrency limits by tag in Prefect Cloud - #1570
- Added
FargateTaskEnvironment
- #1592
Enhancements
- Allow the
Client
to more gracefully handle failed login attempts on initialization - #1535 - Replace
DotDict
withbox.Box
- #1518 - Store
cached_inputs
on Failed states and call their result handlers if they were provided - #1557 raise_on_exception
no longer raises for Prefect Signals, as these are typically intentional / for control flow - #1562run cloud
CLI command takes in optional--parameters
as a file path pointing to a JSON file - #1582- Always consider
Constant
tasks successful and unpack them immediately instead of submitting them for execution - #1527
Task Library
- Add
BlobStorageDownload
andBlobStorageUpload
for interacting with data stored on Azure Blob Storage - #1538 - Loosen Kubernetes Tasks' requirement of an API secret key - #1559
- Add tasks for working in Azure Machine Learning Serviec with Datastores and Datasets - #1590
Fixes
- Fix issue with certain Pause / Resume / Retry pipelines retrying indefinitely - #1177
- Kubernetes Agent deployment YAML generation defaults to local Prefect version - #1573
- Fix issue with custom result handlers not working when called in
cached_inputs
- #1585
Deprecations
- None
Breaking Changes
- None
Contributors
Agents of Environmental Change
Changelog
Released on September 19th, 2019.
Features
- Added Fargate agent - #1521
- Custom user-written environments can be deployed to Prefect Cloud - #1534, #1537
Enhancements
- Allow for Agents to correctly run in environments with differently calibrated clocks - #1402
- Refactor
RemoteEnvironment
to utilize theget_flow
storage interface - #1476 - Ensure Task logger is available in context throughout every pipeline step of the run - #1509
- Skip Docker registry pushing and pulling on empty
registry_url
attribute - #1525 - Agents now log platform errors to flow runs which cannot deploy - #1528
- Updating
ShellTask
to work more like Airflow Bash Operator for streaming logs and returning values - #1451 - Agents now have a verbose/debug logging option for granular output - #1532
DaskKubernetesEnvironment
now allows for custom scheduler and worker specs - #1543, #1537
Task Library
- None
Fixes
- Fix map error by removing
imagePullSecrets
from Kubernetes Agent install if not provided - #1524 - Fix issue with two INFO logs not being associated with the Task Run in Cloud - #1526
execute
CLI command can now load custom environments off of the flow object - #1534
Deprecations
- None
Breaking Changes
- Update
ShellTask
to return only the last line of stdout, as a string - #1451
Contributors
I installed Docker on a Windows machine and all I got was this release
Changelog
Released on September 10, 2019
Features
- Improve Windows compatibility for local development and deploying to Prefect Cloud - #1441, #1456, #1465, #1466
Enhancements
- Add OS platform check to Local Agent for running on Windows machines - #1441
- Add
--base-url
argument for Docker daemons toagent start
CLI command - #1441 - Add environment labels for organizing / tagging different Flow execution environments - #1438
- Use
-U
option when installingprefect
in Docker containers to override base image version - #1461 - Remove restriction that prevented
DotDict
classes from having keys that shadowed dict methods - #1462 - Added livenessProbe to Kubernetes Agent - #1474
- Ensure external Dask Clusters do not require Prefect Cloud environment variables to run Cloud flows - #1481
Task Library
- None
Fixes
- Fix incorrect import in
DaskKubernetesEnvironment
job template - #1458 - Raise error on Agents started without an appropriate API token - #1459
- Fix bug when calling
as_nested_dict
onDotDicts
with anitems
key - #1462 - Fix
--resource-manager
flag on agent install invalidatingimagePullSecrets
- #1469 - Fix issue with user-written result handlers in Prefect Cloud preventing some states from being set - #1480
Deprecations
- None
Breaking Changes
- None
Contributors
Retry Release
0.6.3
Released August 30, 2019
Fixes
- Fix issue with reduced mapped tasks not respecting retries - #1436
Onboards and Upwards
Changelog
0.6.2
Released August 30, 2019
Features
- Added Local, Kubernetes, and Nomad agents - #1341
- Add the ability for Tasks to sequentially loop - #1356
Enhancements
- Adds a copy to clipboard button for codeblocks - #213
- Updates Vuepress to v1.0.3 - #770
- Introduce configurable default for storage class on Flows - #1044
- Allow for min and max workers to be specified in
DaskKubernetesEnvironment
- #1338 - Use task and flow names for corresponding logger names for better organization - #1355
Paused
states subclassScheduled
and can have predefined expirations - #1375- Introduce new Flow health checks prior to Cloud deployment - #1372
- Improve logging functionality to include tracebacks - #1374
- Improve CLI user experience while working with Cloud - #1384
- Users can now create projects from the CLI - #1388
- Add a health check to confirm that serialized flows are valid prior to Cloud deploy - #1397
- Add
task_slug
,flow_id
, andflow_run_id
to context - #1405 - Support persistent
scheduled_start_time
for scheduled flow runs when run locally withflow.run()
- #1418, #1429 - Add
task_args
toTask.map
- #1390 - Add auth flows for
USER
-scoped Cloud API tokens - #1423 - Add
AzureResultHandler
for handling results to / from Azure Blob storage containers - #1421 - Add new configurable
LocalDaskExecutor
- #1336 - Add CLI commands for working with Prefect Cloud auth - #1431
Task Library
- Add new
SnowflakeQuery
task for using snowflake data warehouse - #1113
Fixes
- Fix issue with Docker storage not respecting user-provided image names - #1335
- Fix issue with local retries in Cloud not always running in-process - #1348
Deprecations
- Rename
SynchronousExecutor
asLocalDaskExecutor
- #1434
Breaking Changes
- Rename
CloudEnvironment
toDaskKubernetesEnvironment
- #1250 - Remove unused
queue
method from all executors - #1434
Contributors
Prefect Timing
Changelog
0.6.1
Released August 8, 2019
Features
- Introduce new
flows.checkpointing
configuration setting for checkpointing Tasks in local execution - #1283 - Introduce new, flexible
Schedule
objects - #1320
Enhancements
- Allow passing of custom headers in
Client
calls - #1255 - Autogenerate informative names and tags for Docker images built for Flow storage - #1237
- Allow mixed-case configuration keys (environment variables are interpolated as lowercase) - #1288
- Ensure state handler errors are logged informatively - #1326
Task Library
- Add
BigQueryLoadGoogleCloudStorage
task for loading data into BigQuery from Google Cloud Storage #1317
Fixes
- Fix issue with logs not always arriving in long-standing Dask clusters - #1244
- Fix issue with
BuildImage
docker task not actually running to completion - #1243 - Fix
run --logs
CLI command not exiting on flow run finished state - #1319
Deprecations
OneTimeSchedule
andUnionSchedule
are deprecated, but remain callable as convenience functions - #1320- Old-style schedules can be deserialized as new-style schedules, but support will eventually be dropped - #1320
Breaking Changes
Cloud Ready
Changelog
0.6.0
Released July 16, 2019
Features
- Add the Prefect CLI for working with core objects both locally and in cloud - #1059
- Add RemoteEnvironment for simple executor based executions - #1215
- Add the ability to share caches across Tasks and Flows - #1222
- Add the ability to submit tasks to specific dask workers for task / worker affinity - #1229
Enhancements
- Refactor mapped caching to be independent of order - #1082
- Refactor caching to allow for caching across multiple runs - #1082
- Allow for custom secret names in Result Handlers - #1098
- Have
execute cloud-flow
CLI immediately set the flow run state toFailed
if environment fails - #1122 - Validate configuration objects on initial load - #1136
- Add
auto_generated
property to Tasks for convenient filtering - #1135 - Disable dask work-stealing in kubernetes via scheduler config - #1166
- Implement backoff retry settings on Client calls - #1187
- Explicitly set Dask keys for a better Dask visualization experience - #1218
- Implement a local cache which persists for the duration of a Python session - #1221
- Implement in-process retries for Cloud Tasks which request retry in less than one minute - #1228
- Support
Client.login()
with API tokens - #1240 - Add live log streaming for
prefect run cloud
command - #1241
Task Library
- Add task to trigger AWS Step function workflow #1012
- Add task to copy files within Google Cloud Storage - #1206
- Add task for downloading files from Dropbox - #1205
Fixes
- Fix issue with mapped caching in Prefect Cloud - #1096
- Fix issue with Result Handlers deserializing incorrectly in Cloud - #1112
- Fix issue caused by breaking change in
marshmallow==3.0.0rc7
- #1151 - Fix issue with passing results to Prefect signals - #1163
- Fix issue with
flow.update
not preserving mapped edges - #1164 - Fix issue with Parameters and Context not being raw dictionaries - #1186
- Fix issue with asynchronous, long-running mapped retries in Prefect Cloud - #1208
- Fix issue with automatically applied collections to task call arguments when using the imperative API - #1211
Breaking Changes
- The CLI command
prefect execute-flow
andprefect execute-cloud-flow
no longer exist - #1059 - The
slack_notifier
state handler now uses awebhook_secret
kwarg to pull the URL from a Secret - #1075 - Use GraphQL for Cloud logging - #1193
- Remove the
CloudResultHandler
default result handler - #1198 - Rename
LocalStorage
toLocal
- #1236