Features
-
[
workflow] Add support for URL/URLSearchParams inside the workflow sandbox (#1173) -
[
worker] Export theWorkerStatusinterface (#1184).
Bug Fixes
-
Use custom symbol-based implementation of
instanceoffor all of our custom error classes (#1166). This is a complete rework of the fixes introduced in 1.8.0 and 1.8.1, both of which turned out to be insufficient.instanceofnow works correctly both across execution contexts and when running tests with Jest.💥 The static
isfunction introduced previously on some of our error classes is no longer required, as theinstanceofoperator itself now behave correctly; theseisfunctions have therefore been removed. -
[
client] Makeaction.workflowIdoptional on Schedule update (#1176) -
[
activity]heartbeatTimeoutMsis now correctly set on Activity'sContext.current().info. ThecurrentAttemptScheduledTimestampMsproperty has also been added to that data structure (#1187) -
[
workflow] The Workflow Bundler is now smarter regarding requiring files with incorrect or missing file extensions (#1186). Thanks to@GauBen🙏. -
[
workflow] Fix incorrect values ofworkflowInfo.historyLengthandworkflowInfo.unsafe.isReplayingas reported in out-of-sandbox log messages, and as argument of sink function implementations (#1181). -
[
workflow] Sink functions configured withcallDuringReplay = falseare no longer invoked from a replay-only worker (i.e.Worker.runReplayHistories()); it was previously possible for these to get called in some cases on the very last Workflow Task (#1181). -
[
workflow] Encoding and decoding of protobuf JSON payloads is now working in workflow context. This was previously failing, due to the fact that an underlying library depends on theBufferclass, which is not available inside the workflow sandbox (#1170). Thanks to@antlai-temporal🙏. -
[
core] Improve warning message on error response to completion (temporalio/sdk-core#581) Thanks to@dandavison🙏. -
[
core] Fix abandoned children nondeterminism if they complete (temporalio/sdk-core#580).