Releases: temporalio/sdk-go
v1.23.0
Highlights
Worker Versioning
This version adds support for our new Worker Versioning feature. Please note that this feature's API is subject to change. This feature allows you to assign build identifiers to workers, and ensure that workers operating on a task queue do not receive tasks that they will be incompatible with. You declare the relative [in]compatibility of build identifiers. We will be publishing documentation on this feature soon (and these notes will be updated with a link).
Note: worker versioning will require support from the Temporal server, to be available in release v1.21.0
Specific Changes
2023-05-18 - 269b55b - Set Update ID client side (#1106)
2023-05-18 - eb8ccc1 - Add option to ignore unknown fields when protojson unmarshalling (#1105)
2023-05-19 - a3cd0d1 - Allow update panics to bubble up (#1108)
2023-05-22 - f709720 - Make sure SDK flags are applied to the correct WFT (#1112)
2023-05-22 - febeb48 - Write sdk flags directly during replay (#1116)
2023-05-22 - ff67cdb - Ignore errors from uploading to coveralls (#1115)
2023-05-23 - 55ef398 - Switch to the official coveralls uploader (#1117)
2023-05-24 - 720dab0 - Send ProtocolMessageCommands where appropriate (#1107)
2023-05-25 - 76377c7 - Worker Versioning (#1120)
2023-05-25 - ed13374 - Update panic handling (#1119)
2023-05-25 - fc09967 - Check for child workflow already started error when setting env.testError (#1109)
v1.22.2
Specific Changes
2023-04-14 - a090256 - Remove version_set_id from CompatibleVersionSet (#1089)
2023-04-19 - 29aecb3 - Async Update Polling (#1088)
2023-04-19 - 528337f - Allow unknown fields while parsing json history (#1092)
2023-04-21 - 52be9f5 - Fix typo in NewDisconnectedContext documentation. (#1094)
2023-04-24 - a1f826a - Error on Registering Activity with Workflow Context (#1093)
2023-04-24 - ad1af5e - Exposing WorkflowExecution Started Event attributes on the Workflow Info (#1090)
2023-04-25 - 5cf9af3 - Clarify description of With function (#1096)
2023-05-11 - 95c81bd - Properly store the original failurepb on decode (#1101)
v1.21.2
v1.22.1
v1.22.0
Highlights
Schedules API release
The draft tag from the Schedules
API has been removed.
Specific Changes
2023-02-14 - 3063eee - workflowcheck: mark some fmt functions as deterministic (#1038)
2023-02-16 - 0b0234f - Update CI to test golang 1.20 (#1039)
2023-02-21 - 16d73c5 - Local activity nonfirst attempt counts for metering (#1046)
2023-02-21 - dc4f883 - Use sensible defaults for ScheduleCalendarSpec (#1047)
2023-03-01 - 07c8c7e - Track mutable side effect calls (#1051)
2023-03-07 - 3ce152b - Lookahead to infer messages on all replay paths (#1055)
2023-03-09 - e047c84 - Reduce SA bloat on GetVersion (#1056)
2023-03-13 - 3d009e0 - Add versioning API methods to client (#920)
2023-03-14 - 6b11229 - Suppress update messages during replay (#1059)
2023-03-16 - 91636e4 - Pass errors to the child workflow execution future (#1058)
2023-03-20 - 6eb3e36 - Remove experimental tag from schedules (#1064)
2023-03-22 - e62df8c - Fix compatibility misspelling (#1067)
2023-03-27 - 3b95c6e - Track the worker for each workflow context (#1070)
2023-03-28 - 3d9a1ef - Fix DevServer tests (#1072)
2023-03-28 - 88a40de - Add FrontendHostPort method to DevServer (#1071)
2023-03-29 - 5c0e091 - Message inference for more WF ctx reset paths (#1073)
2023-04-04 - 1b62656 - Remove WorkflowIDReusePolicy from schedule options (#1077)
2023-04-11 - 0005c07 - Add message IDs to update messages (#1079)
2023-04-12 - a294142 - Update WorkflowReplayer docstring instructions for obtaining workflow history JSON (#1081)
v1.21.1
Highlights
Improved worker resilience
Worker now retries for a period of time on fatal errors when polling for new tasks. This improves worker resilience when running temporal behind proxies that may modify incoming requests.
Specific Changes
2023-02-06 - ac60814 - Add testsuite.StartDevServer that starts temporal CLI (#1032)
2023-02-09 - f554827 - Retry "non retryable" error on worker long poll (#1034)
v1.21.0
Highlights
Updates to depend on the latest upstream API version
Specific Changes
2023-01-24 - 1fe6824 - Convert SDK update to protocol/messages approach (#1006)
2023-01-27 - 3b37e0f - Prevent cache eviction race (#1013)
2023-01-30 - 1b39ac9 - Deliver messages even when events are skipped (#1015)
2023-01-30 - 9a541ee - Add ContextPropagators option for replay (#1019)
2023-01-30 - 9b0c6fc - Correct updateHandle.Get when passed nil pointer (#1017)
2023-01-31 - 093eabe - On replayer use task queue from history (#1023)
2023-01-31 - 6e8a39a - Fix headings on activity docs (#1022)
2023-02-01 - 18824b6 - Protect against nil defref in update resp handling (#1025)
2023-02-01 - c423fc8 - Expose session state (#1024)
2023-02-01 - f037c9d - Workaround for updates delivered in first WFT (#1026)
2023-02-02 - a9a4baa - Update to api v1.16.0 (#1028)
2023-02-02 - c6405d6 - Handle CanceledAfterStarted in CanceledEvent (#1027)
v1.20.0
Highlights
Workflow Replayer
Many improvements to the workflow replayer to help catch more non nondeterminate workflow changes when tested with the replayer.
Specific Changes
2022-12-08 - 8e0a972 - Add EnableLoggingInReplay flag to WorkflowReplayerOptions for propagation (#979)
2023-01-03 - 06e474c - Fix schedule docs (#992)
2023-01-04 - 50f633a - Client APIs for workflow update (#989)
2023-01-04 - 5fffe62 - Add GetUnhandledSignalNames (#993)
2023-01-04 - 6f4d14f - Fix history replayer (#990)
2023-01-05 - 0d7304b - Add option to overide replayer execution info (#998)
2023-01-05 - f965f94 - Fix panic on starting child workflows with duplicate IDs (#999)
2023-01-09 - 3dc5e1e - Rewrite service proxy and interceptor to use new api-go code. (#974)
2023-01-09 - 64d80f8 - contrib/tally: improve godoc (#985)
2023-01-11 - a080d2c - updated installation instructions for determinism checker to include latest flag. (#1001)
2023-01-11 - a1154f3 - Datadog tracing implementation (#921)
2023-01-11 - b575b7c - Rename sdk-features to features (#1002)
2023-01-16 - 002db6e - Some documentation fixes (#1004)
v1.19.0
Highlights
Schedule API (experimental)
💥 Breaking changes have been made to creating a schedule. A *ScheduleWorkflowAction
instead of a ScheduleWorkflowAction
type is now used when creating a schedule.
Specific Changes
2022-11-15 - 68010f8 - bugfix: consistently plumb failureConverter (#956)
2022-11-15 - ad892e2 - Schedule fixes (#959)
2022-11-21 - 0d8f46a - Fix default catchupWindow (#963)
2022-11-22 - 0635622 - Add ci trigger for sdk-features (#961)
2022-11-28 - 86b0ef6 - Add num_pollers metric (#965)
2022-11-28 - a23dec9 - Add local_activity_execution_failed metric (#966)
2022-12-06 - 8314c25 - Fix some documentation (#976)
2022-12-06 - 9bcabc9 - Reset SA and memos if execution context is stale (#973)
v1.18.1
Highlights
Failure Converters
We have added a new API to allow users to customize how errors are serialized and de-serialized to failures.
Schedule API (experimental)
We have added a new API to help users run workflows against a provided schedule.
Specific Changes
2022-09-20 - 077e261 - Skip upsert memo integration tests (#914)
2022-09-21 - 754b253 - Do not call ResetSticky on force eviction (#915)
2022-09-28 - a6a8749 - Support backing off more for resource exhausted (#917)
2022-09-30 - e6a06f2 - Add support for custom failure converters (#924)
2022-10-12 - 14df12c - Add IdempotencyKey start span option (#931)
2022-10-19 - 3f3eca4 - Do not set idempotency key for HandleQuery (#934)
2022-10-31 - 40f7da0 - Add resource exhausted metric with cause (#940)
2022-10-31 - 67b4c87 - Don't use data converter if search attribute value is of Payload type (#913)
2022-11-03 - 66eb848 - Adapt to interaction-based upstream API changes (#944)
2022-11-03 - 97ed634 - Set default max eager activities to 3 (#946)
2022-11-07 - 620fa72 - Provide better custom logger example in README (#911)
2022-11-09 - 8ab62d9 - Add schedule API (#943)
2022-11-10 - 133a6a0 - Remove default limit of overall max eager activities and add max per task (#952)