Skip to content

Version 0.4.1

Compare
Choose a tag to compare
@jlowin jlowin released this 31 Jan 19:57
976b205

Major Features

  • Add ability to run scheduled flows locally via on_schedule kwarg in flow.run() - #519
  • Allow tasks to specify their own result handlers, ensure inputs and outputs are stored only when necessary, and ensure no raw data is sent to the database - #587

Minor Features

  • Allow for building ContainerEnvironments locally without pushing to registry - #514
  • Make mapping more robust when running children tasks multiple times - #541
  • Always prefer cached_inputs over upstream states, if available - #546
  • Add hooks to FlowRunner.initialize_run() for manipulating task states and contexts - #548
  • Improve state-loading strategy for Prefect Cloud - #555
  • Introduce on_failure kwarg to Tasks and Flows for user-friendly failure callbacks - #551
  • Include scheduled_start_time in context for Flow runs - #524
  • Add GitHub PR template - #542
  • Allow flows to be deployed to Prefect Cloud without a project id - #571
  • Introduce serialization schemas for ResultHandlers - #572
  • Add new metadata attribute to States for managing user-generated results - #573
  • Add new 'JSONResultHandler' for serializing small bits of data without external storage - #576
  • Use JSONResultHandler for all Parameter caching - #590

Fixes

  • Fixed flow.deploy() attempting to access a nonexistent string attribute - #503
  • Ensure all logs make it to the logger service in deployment - #508, #552
  • Fix a situation where Paused tasks would be treated as Pending and run - #535
  • Ensure errors raised in state handlers are trapped appropriately in Cloud Runners - #554
  • Ensure unexpected errors raised in FlowRunners are robustly handled - #568
  • Fixed non-deterministic errors in mapping caused by clients resolving futures of other clients - #569
  • Older versions of Prefect will now ignore fields added by newer versions when deserializing objects - #583
  • Result handler failures now result in clear task run failures - #575
  • Fix issue deserializing old states with empty metadata - #590
  • Fix issue serializing cached_inputs - #594

Breaking Changes

  • Move prefect.client.result_handlers to prefect.engine.result_handlers - #512
  • Removed inputs kwarg from TaskRunner.run() - #546
  • Moves the start_task_ids argument from FlowRunner.run() to Environment.run() - #544, #545
  • Convert timeout kwarg from timedelta to integer - #540
  • Remove timeout kwarg from executor.wait - #569
  • Serialization of States will ignore any result data that hasn't been processed - #581
  • Removes VersionedSchema in favor of implicit versioning: serializers will ignore unknown fields and the create_object method is responsible for recreating missing ones - #583
  • Convert and rename CachedState to a successful state named Cached, and also remove the superfluous cached_result attribute - #586