Skip to content

Latest commit

 

History

History
93 lines (71 loc) · 3.87 KB

File metadata and controls

93 lines (71 loc) · 3.87 KB

Changelog

[Unreleased]

Added

  • Nexus operation link propagation for signals. When a Nexus operation handler signals a workflow (including signal-with-start), the inbound Nexus request links are now forwarded onto the signaled workflow so its history events link back to the caller, and the link the server returns for the signaled event is attached to the caller workflow's Nexus operation history event. This makes the caller and callee mutually navigable in the UI for signal-based Nexus operations.
  • Exposed backoff_start_interval for continue-as-new, to allow the new workflow to start after a delay.

Changed

  • AWS Lambda worker configure parameter supports sync, async, and async generator style functions. This callback is invoked on the asyncio event loop.
  • Relaxed the protobuf dependency bounds to allow protobuf 7 where compatible with the selected optional dependencies.

Deprecated

Breaking Changes

  • AWS Lambda worker configure parameter has been changed to be invoked per-invocation of the worker instead of only at startup. It is advised that any shared, heavy-weight operations are performed outside of the callback before run_worker is invoked.

Fixed

Security

[1.29.0] - 2026-06-17

Added

  • Added experimental temporalio.workflow.signal_with_start_workflow, backed by generated system Nexus bindings for WorkflowService.SignalWithStartWorkflowExecution.
  • Added OpenAI Agents plugin support for CustomTool dispatch, including lazy tool discovery through defer_loading.

Changed

  • Client connections now use gzip transport-level gRPC compression by default. Pass grpc_compression=GrpcCompression.NONE to Client.connect or CloudOperationsClient.connect to disable it.

Breaking Changes

  • StartWorkflowUpdateWithStartInput now owns the authoritative rpc_metadata and rpc_timeout fields for OutboundInterceptor.start_update_with_start_workflow. These fields were removed from the nested update-with-start input objects, so custom interceptors that accessed them there should read or update the top-level fields instead.

Fixed

  • Fixed breakpoint() and pdb.set_trace() inside workflow code when a worker runs with debug_mode=True or TEMPORAL_DEBUG=1; sandboxed workflows without debug mode now get a clearer error pointing to debug_mode=True.
  • Fixed start_update_with_start_workflow interceptor handling so RPC metadata and timeouts are forwarded to the underlying execute_multi_operation call.
  • Fixed OpenAI Agents plugin streamed event serialization when pydantic had not yet built deferred schemas, and fixed terminal sandbox errors retrying forever.
  • Removed the lazy-connect lock from the per-RPC hot path. It was previously acquired on every RPC, putting an event-loop-bound primitive on the hot path; it is now skipped once the client is connected. This reduces the client's coupling to the event loop it connected on, which can help when reusing a single long-lived Client across event loops or threads (e.g. the dedicated-loop pattern used with gevent/gunicorn and synchronous services). Note this does not make a Client fully thread- or loop-agnostic; reusing one long-lived loop is still the recommended pattern.