Skip to content

v1.7.0

Choose a tag to compare

@github-actions github-actions released this 20 Aug 14:09
· 28 commits to main since this release
52aefa0

Notable Changes

Added

  • Added Temporalio::Runtime::LoggingOptions#log_format to select compact, pretty, or
    newline-delimited JSON output for Core logs written to the console.
  • Added FailureConverter process_common_attributes: to customize the value sent to the payload converter when
    encoding common failure attributes.
  • Added the Temporalio::Worker max_eager_activity_reservations_per_workflow_task: option to
    configure the number of activity slots reserved for eager execution per workflow task. Values
    must be positive; use disable_eager_activity_execution: true to disable eager execution.

💥 Breaking Changes

  • By default, workers now proactively validate outbound payload/memo sizes before sending: a field
    over the warn threshold is logged
    ([TMPRL1103] at WARN) but still sent, while a task completion over the error limit is failed
    retryably ([TMPRL1103] at ERROR) instead of sent. Previously these reached the server, which
    terminated the workflow or failed the activity non-retryably; failing retryably instead lets a
    corrected workflow or activity be redeployed and recover. Tune warn thresholds via
    Temporalio::Client::Connection::PayloadLimitsOptions (passed as the connection's
    payload_limits:). If you use a proxy between the worker and server that alters the size of
    payloads (e.g. compression, encryption, external storage), it is advised that you disable size
    enforcement by setting disable_payload_error_limit: true on the worker.

Changed

  • User metadata fields (static_summary, static_details, current_details, activity summary, timer
    summary) are no longer marked as experimental.

Fixed

  • Temporalio::Client::WorkflowHandle#result now preserves fiber-local Thread.current[] context
    while fetching workflow history, allowing gRPC interceptors to apply request-scoped RPC options.
  • Temporalio::Client::WorkflowHandle#result no longer returns nil while a workflow is still
    running when a history long poll expires without returning an event.

Added

  • Worker heartbeats now report the SDK runtime and hosting/platform information the first time each
    worker heartbeats successfully. Set Temporalio::Runtime.new(disable_environment_info: true) to
    opt out of environment reporting entirely.

Core updates

  • Bump sdk-core to 8cf682b7

New Contributors

Full Changelog: v1.6.0...v1.7.0