lyft / clutch

Extensible platform for infrastructure management
https://clutch.sh
Apache License 2.0
1.7k stars 120 forks source link

housekeeping: Update module go.temporal.io/sdk to v1.30.0 #3163

Closed renovate[bot] closed 1 week ago

renovate[bot] commented 3 weeks ago

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
go.temporal.io/sdk v1.26.1 -> v1.30.0 age adoption passing confidence

Release Notes

temporalio/sdk-go (go.temporal.io/sdk) ### [`v1.30.0`](https://redirect.github.com/temporalio/sdk-go/releases/tag/v1.30.0) [Compare Source](https://redirect.github.com/temporalio/sdk-go/compare/v1.29.1...v1.30.0) ##### Highlights ##### Nexus We have made some improvements in Nexus metrics, `nexus_task_execution_failed` is now tagged with a `failure_reason` to help users understand the cause of the task failure. see also: https://docs.temporal.io/references/sdk-metrics#nexus_task_execution_failed ##### Test Environment Improved support for mocking Nexus operations so you won’t need to have access to the operation itself or implementing a dummy operation. You can mock by calling `OnNexusOperation` and, when appropriate, `RegisterNexusAsyncOperationCompletion`. Docs coming soon. ##### Worker shutdown When a Go SDK worker s shutting down it will now communicate to the Temporal service through a new `ShutdownWorker` API that the worker is no longer taking more tasks. If the Temporal service supports this feature all sticky workflow tasks will be assigned back to the normal task queue. This should reduce latency caused by shutting down a worker due to stick task queue timeout. ##### What's Changed 2024-09-17 - [`03e0341`](https://redirect.github.com/temporalio/sdk-go/commit/03e0341) - Use stable CLI for tests ([#​1637](https://redirect.github.com/temporalio/sdk-go/issues/1637)) 2024-09-17 - [`8283604`](https://redirect.github.com/temporalio/sdk-go/commit/8283604) - Remove DISABLE_NEXUS_TESTS env var from test code ([#​1640](https://redirect.github.com/temporalio/sdk-go/issues/1640)) 2024-09-23 - [`d10e871`](https://redirect.github.com/temporalio/sdk-go/commit/d10e871) - Update workflowcheck and allow it to handle aliased context ([#​1642](https://redirect.github.com/temporalio/sdk-go/issues/1642)) 2024-09-24 - [`cf3153e`](https://redirect.github.com/temporalio/sdk-go/commit/cf3153e) - expose ScheduleDescription ([#​1649](https://redirect.github.com/temporalio/sdk-go/issues/1649)) 2024-10-01 - [`974ccc0`](https://redirect.github.com/temporalio/sdk-go/commit/974ccc0) - Call the ShutdownWorker API as part of workflow worker cleanup ([#​1645](https://redirect.github.com/temporalio/sdk-go/issues/1645)) 2024-10-01 - [`f0ac2ee`](https://redirect.github.com/temporalio/sdk-go/commit/f0ac2ee) - Fix Nexus test env to respect ScheduleToCloseTimeout ([#​1636](https://redirect.github.com/temporalio/sdk-go/issues/1636)) 2024-10-02 - [`772bc83`](https://redirect.github.com/temporalio/sdk-go/commit/772bc83) - MultiOperation retries non-durable Update ([#​1652](https://redirect.github.com/temporalio/sdk-go/issues/1652)) 2024-10-03 - [`4e8380c`](https://redirect.github.com/temporalio/sdk-go/commit/4e8380c) - Error for unused Update operation ([#​1655](https://redirect.github.com/temporalio/sdk-go/issues/1655)) 2024-10-03 - [`cdd3070`](https://redirect.github.com/temporalio/sdk-go/commit/cdd3070) - Remove history truncation ([#​1656](https://redirect.github.com/temporalio/sdk-go/issues/1656)) 2024-10-03 - [`d7a2128`](https://redirect.github.com/temporalio/sdk-go/commit/d7a2128) - Enforce nexus request timeout in workflow test suite ([#​1653](https://redirect.github.com/temporalio/sdk-go/issues/1653)) 2024-10-03 - [`ea60ad5`](https://redirect.github.com/temporalio/sdk-go/commit/ea60ad5) - Evict the workflow from cache if their is a panic in the SDK ([#​1654](https://redirect.github.com/temporalio/sdk-go/issues/1654)) 2024-10-04 - [`7d57a66`](https://redirect.github.com/temporalio/sdk-go/commit/7d57a66) - ensure WorkflowTaskExecutionFailureCounter is called with a tag ([#​1658](https://redirect.github.com/temporalio/sdk-go/issues/1658)) 2024-10-08 - [`75bd94b`](https://redirect.github.com/temporalio/sdk-go/commit/75bd94b) - Panic if endpoint or service is empty in NewNexusClient ([#​1661](https://redirect.github.com/temporalio/sdk-go/issues/1661)) 2024-10-08 - [`b300e50`](https://redirect.github.com/temporalio/sdk-go/commit/b300e50) - Nexus: Fix link not being attached to a workflow started via a Handler function ([#​1659](https://redirect.github.com/temporalio/sdk-go/issues/1659)) 2024-10-08 - [`b4e934e`](https://redirect.github.com/temporalio/sdk-go/commit/b4e934e) - Include updateID and updateName in update logger ([#​1660](https://redirect.github.com/temporalio/sdk-go/issues/1660)) 2024-10-08 - [`c82a8ac`](https://redirect.github.com/temporalio/sdk-go/commit/c82a8ac) - Error if history contains unexpected events after the StartedEventId ([#​1662](https://redirect.github.com/temporalio/sdk-go/issues/1662)) 2024-10-09 - [`3671c99`](https://redirect.github.com/temporalio/sdk-go/commit/3671c99) - fix link ([#​1665](https://redirect.github.com/temporalio/sdk-go/issues/1665)) 2024-10-14 - [`e503995`](https://redirect.github.com/temporalio/sdk-go/commit/e503995) - Fix nexus_task_execution_failed to include OperationError outcome in start requests ([#​1664](https://redirect.github.com/temporalio/sdk-go/issues/1664)) 2024-10-15 - [`7432064`](https://redirect.github.com/temporalio/sdk-go/commit/7432064) - Add regression test to validate temporal_workflow_task_execution_failed on replay ([#​1669](https://redirect.github.com/temporalio/sdk-go/issues/1669)) 2024-10-16 - [`959f581`](https://redirect.github.com/temporalio/sdk-go/commit/959f581) - Read cgroups for resource tuner limits ([#​1632](https://redirect.github.com/temporalio/sdk-go/issues/1632)) 2024-10-16 - [`cfc38de`](https://redirect.github.com/temporalio/sdk-go/commit/cfc38de) - Fix TestNonDeterminismFailureCauseReplay integration test ([#​1674](https://redirect.github.com/temporalio/sdk-go/issues/1674)) 2024-10-18 - [`1a13bf3`](https://redirect.github.com/temporalio/sdk-go/commit/1a13bf3) - Add Nexus `failure_reason` metric tag ([#​1671](https://redirect.github.com/temporalio/sdk-go/issues/1671)) 2024-10-24 - [`5505d04`](https://redirect.github.com/temporalio/sdk-go/commit/5505d04) - Fix failure_reason label for nexus_task_execution_failed metric on task timeout ([#​1684](https://redirect.github.com/temporalio/sdk-go/issues/1684)) 2024-10-24 - [`56b601d`](https://redirect.github.com/temporalio/sdk-go/commit/56b601d) - Bump Nexus sdk-go to v0.0.11 ([#​1685](https://redirect.github.com/temporalio/sdk-go/issues/1685)) 2024-10-25 - [`2bd372c`](https://redirect.github.com/temporalio/sdk-go/commit/2bd372c) - Upgrade API to v1.40.0 ([#​1688](https://redirect.github.com/temporalio/sdk-go/issues/1688)) 2024-10-25 - [`c0a1b59`](https://redirect.github.com/temporalio/sdk-go/commit/c0a1b59) - Translate gRPC Canceled code to Nexus HandlerErrorTypeInternal ([#​1680](https://redirect.github.com/temporalio/sdk-go/issues/1680)) 2024-10-28 - [`37d1775`](https://redirect.github.com/temporalio/sdk-go/commit/37d1775) - Support for mocking nexus operations ([#​1666](https://redirect.github.com/temporalio/sdk-go/issues/1666)) 2024-10-28 - [`4afb587`](https://redirect.github.com/temporalio/sdk-go/commit/4afb587) - Update-with-Start incompatible options ([#​1690](https://redirect.github.com/temporalio/sdk-go/issues/1690)) ### [`v1.29.1`](https://redirect.github.com/temporalio/sdk-go/releases/tag/v1.29.1) [Compare Source](https://redirect.github.com/temporalio/sdk-go/compare/v1.29.0...v1.29.1) #### What's Changed - Fix Version test failure due to 1.25.0 server release by [@​yuandrew](https://redirect.github.com/yuandrew) in [https://github.com/temporalio/sdk-go/pull/1629](https://redirect.github.com/temporalio/sdk-go/pull/1629) - Update internal timers to use NewTimerWithOptions by [@​yuandrew](https://redirect.github.com/yuandrew) in [https://github.com/temporalio/sdk-go/pull/1618](https://redirect.github.com/temporalio/sdk-go/pull/1618) - Nexus handler error translation by [@​bergundy](https://redirect.github.com/bergundy) in [https://github.com/temporalio/sdk-go/pull/1626](https://redirect.github.com/temporalio/sdk-go/pull/1626) **Full Changelog**: https://github.com/temporalio/sdk-go/compare/v1.29.0...v1.29.1 ### [`v1.29.0`](https://redirect.github.com/temporalio/sdk-go/releases/tag/v1.29.0) [Compare Source](https://redirect.github.com/temporalio/sdk-go/compare/v1.28.1...v1.29.0) ### Highlights #### Workflow Update-With-Start (Private Preview) Note: This feature requires a server version 1.24+ and must be enabled. For self hosted you can set `frontend.enableExecuteMultiOperation` for Temporal Cloud please reach out to your Temporal account team or [Temporal Support Team](https://docs.temporal.io/cloud/support#support-ticket) to enable update with start in your namespace. This release add support for Workflow Update-With-Start. Update-With-Start allows users to send a Workflow Update request along with a Start Workflow request in the same RPC. Users can think of Update-With-Start as analogous to Signal-With-Start except for Updates instead of Signals. To create a Update with start request users call `client.NewUpdateWithStartWorkflowOperation` and pass it to `WorkflowOptions.WithStartOperation` . #### Slot auto tuning (Private Preview) - Added `WorkerOptions.Tuner` which is a `WorkerTuner` composed of `SlotSupplier` s. These interfaces can be used to customize how the worker decides to make slots available for Workflow and Activity Tasks. Some default slot suppliers are included: - `ResourceBasedSlotSupplier` can be used to tune the workers slot count based on available memory and cpu resources. Make a ready-to-go `WorkerTuner` by using `NewResourceBasedTuner`. You can set a memory/cpu target and the worker will automatically try to reach those target usage levels. - `FixedSizeSlotSupplier` always hands out slots until an upper bound - `CompositeTuner` can be used to combine different kinds of `SlotSuppliers` to implement `WorkerTuner`. Please give the resource based tuning a try and let us know how it works for you (feedback on community slack is welcome)! It'll work best if the worker is the only thing on your host using significant resources. Try setting the thresholds to a reasonable value like 0.8 Note: Resource based tuning and custom Slot Supplier implementations are currently considered experimental. #### User Metadata (Public Preview) Note: This feature requires a server version 1.25+ This release add support for user metadata inside Workflows. This lets users set custom metadata on Workflow executions and certain APIs inside workflow that will be visible on the UI Currently the Go SDK support: - Fixed "summary" and "details" on workflow start - Details on timer names through `workflow.NewTimerWithOptions` - Details on signals, updates and query handlers through `workflow.SignalChannelOptions,` `workflow.QueryHandlerOptions` and `workflow.UpdateHandlerOptions` See also: [https://github.com/temporalio/features/issues/486](https://redirect.github.com/temporalio/features/issues/486) #### What's Changed 2024-07-23 - [`9c40461`](https://redirect.github.com/temporalio/sdk-go/commit/9c40461) - Add utility to get metrics handler for a Nexus operation ([#​1559](https://redirect.github.com/temporalio/sdk-go/issues/1559)) 2024-07-25 - [`bcc623d`](https://redirect.github.com/temporalio/sdk-go/commit/bcc623d) - Add support for managing schedule search attributes when when updating a schedule ([#​1562](https://redirect.github.com/temporalio/sdk-go/issues/1562)) 2024-07-26 - [`1f0296c`](https://redirect.github.com/temporalio/sdk-go/commit/1f0296c) - Support for WorkflowIdConflictPolicy ([#​1563](https://redirect.github.com/temporalio/sdk-go/issues/1563)) 2024-07-29 - [`2baa60e`](https://redirect.github.com/temporalio/sdk-go/commit/2baa60e) - Test duplicate rejected updates ([#​1569](https://redirect.github.com/temporalio/sdk-go/issues/1569)) 2024-07-29 - [`6bb8f99`](https://redirect.github.com/temporalio/sdk-go/commit/6bb8f99) - Add rule code to warning ([#​1572](https://redirect.github.com/temporalio/sdk-go/issues/1572)) 2024-07-29 - [`dd28ced`](https://redirect.github.com/temporalio/sdk-go/commit/dd28ced) - Protect against legacy queries when state is destroyed ([#​1568](https://redirect.github.com/temporalio/sdk-go/issues/1568)) 2024-08-05 - [`9b9201f`](https://redirect.github.com/temporalio/sdk-go/commit/9b9201f) - Use correct branch when not a pull request ([#​1578](https://redirect.github.com/temporalio/sdk-go/issues/1578)) 2024-08-05 - [`c5b519e`](https://redirect.github.com/temporalio/sdk-go/commit/c5b519e) - Build omes worker image w/ pending changes ([#​1577](https://redirect.github.com/temporalio/sdk-go/issues/1577)) 2024-08-06 - [`a1d05a6`](https://redirect.github.com/temporalio/sdk-go/commit/a1d05a6) - WorkerTuner & Resource based autotuning ([#​1546](https://redirect.github.com/temporalio/sdk-go/issues/1546)) 2024-08-06 - [`c2ce2e6`](https://redirect.github.com/temporalio/sdk-go/commit/c2ce2e6) - Do not warn on unfinished handlers if workflow failed ([#​1581](https://redirect.github.com/temporalio/sdk-go/issues/1581)) 2024-08-08 - [`2927574`](https://redirect.github.com/temporalio/sdk-go/commit/2927574) - Switch omes to post-merge ([#​1583](https://redirect.github.com/temporalio/sdk-go/issues/1583)) 2024-08-09 - [`0b7928d`](https://redirect.github.com/temporalio/sdk-go/commit/0b7928d) - Fix UpsertTypedSearchAttributes docs typo ([#​1585](https://redirect.github.com/temporalio/sdk-go/issues/1585)) 2024-08-14 - [`bb42a8b`](https://redirect.github.com/temporalio/sdk-go/commit/bb42a8b) - Fix Go SDK CI ([#​1590](https://redirect.github.com/temporalio/sdk-go/issues/1590)) 2024-08-14 - [`c3ac511`](https://redirect.github.com/temporalio/sdk-go/commit/c3ac511) - Improve docs and tests for HandlerUnfinishedPolicy ([#​1589](https://redirect.github.com/temporalio/sdk-go/issues/1589)) 2024-08-15 - [`2a02c48`](https://redirect.github.com/temporalio/sdk-go/commit/2a02c48) - Removing wording saying a signal will ignore start delay ([#​1592](https://redirect.github.com/temporalio/sdk-go/issues/1592)) 2024-08-15 - [`b5db2b7`](https://redirect.github.com/temporalio/sdk-go/commit/b5db2b7) - Add TaskQueueStats to DescribeTaskQueueEnhanced ([#​1553](https://redirect.github.com/temporalio/sdk-go/issues/1553)) 2024-08-20 - [`edc3c6c`](https://redirect.github.com/temporalio/sdk-go/commit/edc3c6c) - Allow workflow interceptors to add nexus headers ([#​1604](https://redirect.github.com/temporalio/sdk-go/issues/1604)) 2024-08-21 - [`1fe6141`](https://redirect.github.com/temporalio/sdk-go/commit/1fe6141) - Support updates in tracing interceptor ([#​1595](https://redirect.github.com/temporalio/sdk-go/issues/1595)) 2024-08-21 - [`a31f86d`](https://redirect.github.com/temporalio/sdk-go/commit/a31f86d) - Address flaky tests ([#​1607](https://redirect.github.com/temporalio/sdk-go/issues/1607)) 2024-08-22 - [`9bcc1a9`](https://redirect.github.com/temporalio/sdk-go/commit/9bcc1a9) - Minor docstring grammar updates in activity.go ([#​1608](https://redirect.github.com/temporalio/sdk-go/issues/1608)) 2024-08-23 - [`94f2100`](https://redirect.github.com/temporalio/sdk-go/commit/94f2100) - Minor correction to TQ stats docs ([#​1606](https://redirect.github.com/temporalio/sdk-go/issues/1606)) 2024-08-28 - [`5364a47`](https://redirect.github.com/temporalio/sdk-go/commit/5364a47) - Handle Nexus links ([#​1605](https://redirect.github.com/temporalio/sdk-go/issues/1605)) 2024-08-29 - [`e85a098`](https://redirect.github.com/temporalio/sdk-go/commit/e85a098) - Update-with-Start operation ([#​1579](https://redirect.github.com/temporalio/sdk-go/issues/1579)) 2024-08-30 - [`1b6220d`](https://redirect.github.com/temporalio/sdk-go/commit/1b6220d) - Mark Nexus link converter functions as experimental ([#​1615](https://redirect.github.com/temporalio/sdk-go/issues/1615)) 2024-08-30 - [`f47e644`](https://redirect.github.com/temporalio/sdk-go/commit/f47e644) - Experimental user metadata and workflow metadata query support ([#​1597](https://redirect.github.com/temporalio/sdk-go/issues/1597)) 2024-09-03 - [`2af8c72`](https://redirect.github.com/temporalio/sdk-go/commit/2af8c72) - Narrow scope of used slots lock for tracking slot supplier ([#​1617](https://redirect.github.com/temporalio/sdk-go/issues/1617)) 2024-09-03 - [`52ea97f`](https://redirect.github.com/temporalio/sdk-go/commit/52ea97f) - Mark NewTimerWithOptions as Experimental ([#​1619](https://redirect.github.com/temporalio/sdk-go/issues/1619)) 2024-09-03 - [`eb41d13`](https://redirect.github.com/temporalio/sdk-go/commit/eb41d13) - Expose QueryRejectedError ([#​1616](https://redirect.github.com/temporalio/sdk-go/issues/1616)) 2024-07-23 - [`9c40461`](https://redirect.github.com/temporalio/sdk-go/commit/9c40461) - Add utility to get metrics handler for a Nexus operation ([#​1559](https://redirect.github.com/temporalio/sdk-go/issues/1559)) 2024-07-25 - [`bcc623d`](https://redirect.github.com/temporalio/sdk-go/commit/bcc623d) - Add support for managing schedule search attributes when when updating a schedule ([#​1562](https://redirect.github.com/temporalio/sdk-go/issues/1562)) 2024-07-26 - [`1f0296c`](https://redirect.github.com/temporalio/sdk-go/commit/1f0296c) - Support for WorkflowIdConflictPolicy ([#​1563](https://redirect.github.com/temporalio/sdk-go/issues/1563)) 2024-07-29 - [`2baa60e`](https://redirect.github.com/temporalio/sdk-go/commit/2baa60e) - Test duplicate rejected updates ([#​1569](https://redirect.github.com/temporalio/sdk-go/issues/1569)) 2024-07-29 - [`6bb8f99`](https://redirect.github.com/temporalio/sdk-go/commit/6bb8f99) - Add rule code to warning ([#​1572](https://redirect.github.com/temporalio/sdk-go/issues/1572)) 2024-07-29 - [`dd28ced`](https://redirect.github.com/temporalio/sdk-go/commit/dd28ced) - Protect against legacy queries when state is destroyed ([#​1568](https://redirect.github.com/temporalio/sdk-go/issues/1568)) 2024-08-05 - [`9b9201f`](https://redirect.github.com/temporalio/sdk-go/commit/9b9201f) - Use correct branch when not a pull request ([#​1578](https://redirect.github.com/temporalio/sdk-go/issues/1578)) 2024-08-05 - [`c5b519e`](https://redirect.github.com/temporalio/sdk-go/commit/c5b519e) - Build omes worker image w/ pending changes ([#​1577](https://redirect.github.com/temporalio/sdk-go/issues/1577)) 2024-08-06 - [`a1d05a6`](https://redirect.github.com/temporalio/sdk-go/commit/a1d05a6) - WorkerTuner & Resource based autotuning ([#​1546](https://redirect.github.com/temporalio/sdk-go/issues/1546)) 2024-08-06 - [`c2ce2e6`](https://redirect.github.com/temporalio/sdk-go/commit/c2ce2e6) - Do not warn on unfinished handlers if workflow failed ([#​1581](https://redirect.github.com/temporalio/sdk-go/issues/1581)) 2024-08-08 - [`2927574`](https://redirect.github.com/temporalio/sdk-go/commit/2927574) - Switch omes to post-merge ([#​1583](https://redirect.github.com/temporalio/sdk-go/issues/1583)) 2024-08-09 - [`0b7928d`](https://redirect.github.com/temporalio/sdk-go/commit/0b7928d) - Fix UpsertTypedSearchAttributes docs typo ([#​1585](https://redirect.github.com/temporalio/sdk-go/issues/1585)) 2024-08-14 - [`bb42a8b`](https://redirect.github.com/temporalio/sdk-go/commit/bb42a8b) - Fix Go SDK CI ([#​1590](https://redirect.github.com/temporalio/sdk-go/issues/1590)) 2024-08-14 - [`c3ac511`](https://redirect.github.com/temporalio/sdk-go/commit/c3ac511) - Improve docs and tests for HandlerUnfinishedPolicy ([#​1589](https://redirect.github.com/temporalio/sdk-go/issues/1589)) 2024-08-15 - [`2a02c48`](https://redirect.github.com/temporalio/sdk-go/commit/2a02c48) - Removing wording saying a signal will ignore start delay ([#​1592](https://redirect.github.com/temporalio/sdk-go/issues/1592)) 2024-08-15 - [`b5db2b7`](https://redirect.github.com/temporalio/sdk-go/commit/b5db2b7) - Add TaskQueueStats to DescribeTaskQueueEnhanced ([#​1553](https://redirect.github.com/temporalio/sdk-go/issues/1553)) 2024-08-20 - [`edc3c6c`](https://redirect.github.com/temporalio/sdk-go/commit/edc3c6c) - Allow workflow interceptors to add nexus headers ([#​1604](https://redirect.github.com/temporalio/sdk-go/issues/1604)) 2024-08-21 - [`1fe6141`](https://redirect.github.com/temporalio/sdk-go/commit/1fe6141) - Support updates in tracing interceptor ([#​1595](https://redirect.github.com/temporalio/sdk-go/issues/1595)) 2024-08-21 - [`a31f86d`](https://redirect.github.com/temporalio/sdk-go/commit/a31f86d) - Address flaky tests ([#​1607](https://redirect.github.com/temporalio/sdk-go/issues/1607)) 2024-08-22 - [`9bcc1a9`](https://redirect.github.com/temporalio/sdk-go/commit/9bcc1a9) - Minor docstring grammar updates in activity.go ([#​1608](https://redirect.github.com/temporalio/sdk-go/issues/1608)) 2024-08-23 - [`94f2100`](https://redirect.github.com/temporalio/sdk-go/commit/94f2100) - Minor correction to TQ stats docs ([#​1606](https://redirect.github.com/temporalio/sdk-go/issues/1606)) 2024-08-28 - [`5364a47`](https://redirect.github.com/temporalio/sdk-go/commit/5364a47) - Handle Nexus links ([#​1605](https://redirect.github.com/temporalio/sdk-go/issues/1605)) 2024-08-29 - [`e85a098`](https://redirect.github.com/temporalio/sdk-go/commit/e85a098) - Update-with-Start operation ([#​1579](https://redirect.github.com/temporalio/sdk-go/issues/1579)) 2024-08-30 - [`1b6220d`](https://redirect.github.com/temporalio/sdk-go/commit/1b6220d) - Mark Nexus link converter functions as experimental ([#​1615](https://redirect.github.com/temporalio/sdk-go/issues/1615)) 2024-08-30 - [`f47e644`](https://redirect.github.com/temporalio/sdk-go/commit/f47e644) - Experimental user metadata and workflow metadata query support ([#​1597](https://redirect.github.com/temporalio/sdk-go/issues/1597)) 2024-09-03 - [`2af8c72`](https://redirect.github.com/temporalio/sdk-go/commit/2af8c72) - Narrow scope of used slots lock for tracking slot supplier ([#​1617](https://redirect.github.com/temporalio/sdk-go/issues/1617)) 2024-09-03 - [`52ea97f`](https://redirect.github.com/temporalio/sdk-go/commit/52ea97f) - Mark NewTimerWithOptions as Experimental ([#​1619](https://redirect.github.com/temporalio/sdk-go/issues/1619)) 2024-09-03 - [`eb41d13`](https://redirect.github.com/temporalio/sdk-go/commit/eb41d13) - Expose QueryRejectedError ([#​1616](https://redirect.github.com/temporalio/sdk-go/issues/1616)) 2024-09-05 - [`6f8719a`](https://redirect.github.com/temporalio/sdk-go/commit/6f8719a) - Improve active task queue definition ([#​1621](https://redirect.github.com/temporalio/sdk-go/issues/1621)) ### [`v1.28.1`](https://redirect.github.com/temporalio/sdk-go/releases/tag/v1.28.1) [Compare Source](https://redirect.github.com/temporalio/sdk-go/compare/v1.28.0...v1.28.1) ##### Specific Changes - Update SDK version by [@​bergundy](https://redirect.github.com/bergundy) in [https://github.com/temporalio/sdk-go/pull/1558](https://redirect.github.com/temporalio/sdk-go/pull/1558) ### [`v1.28.0`](https://redirect.github.com/temporalio/sdk-go/releases/tag/v1.28.0) [Compare Source](https://redirect.github.com/temporalio/sdk-go/compare/v1.27.0...v1.28.0) ### Nexus pre-release **⚠️ EXPERIMENTAL - APIs may change in a future release ⚠️** See [the proposal](https://redirect.github.com/temporalio/proposals/blob/b72c49b0c2278e916265b00a49638006f8fce469/nexus/sdk-go.md) for usage instructions. Self hosted users can [try Nexus out](https://redirect.github.com/temporalio/temporal/blob/main/docs/architecture/nexus.md#trying-nexus-out) in single cluster deployments with server version `1.25.0-rc.0` - **not meant for production use**. Temporal Cloud users may reach out and open a support ticket to request access to the pre-release. To use Nexus with the `temporal` CLI dev server: 1. download CLI `0.14.0-nexus.0` to the current directory: curl -sSf https://temporal.download/cli.sh | sh -s -- --version v0.14.0-nexus.0 --dir . 2. run the dev server with the required configs: ./temporal server start-dev --dynamic-config-value system.enableNexus=true --http-port 7243 ### Warn on unfinished handlers The SDK will now `WARN` by default if a workflow is completed by the SDK with unfinished update handlers. Users can use `workflow.AllHandlersFinished` to wait for all handlers to be finished or set `UnfinishedPolicy` in `UpdateHandlerOptions`. ### Add Workflow safe Mutex and Semaphore This release includes new helper interfaces `workflow.Mutex` and `workflow.Semaphore` that are workflow safe versions of a mutex and semaphore. These interfaces are to help users synchronize sensitive business logic across multiple coroutines or update handlers. #### What's Changed - Clean up docs for NextRetryDelay by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1522](https://redirect.github.com/temporalio/sdk-go/pull/1522) - Update some docs around grpc Dial options by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1514](https://redirect.github.com/temporalio/sdk-go/pull/1514) - Wrap GRPC::CANCELED and DEADLINE_EXCEEDED in an SDK Timeout exception… by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1524](https://redirect.github.com/temporalio/sdk-go/pull/1524) - Use grpc context for GetSystemInfo. by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1528](https://redirect.github.com/temporalio/sdk-go/pull/1528) - Add option to handle scream snake case enums. by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1529](https://redirect.github.com/temporalio/sdk-go/pull/1529) - Add workflow safe Mutex and Semaphore by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1530](https://redirect.github.com/temporalio/sdk-go/pull/1530) - Ensure our proxy helpers forward metadata by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1531](https://redirect.github.com/temporalio/sdk-go/pull/1531) - Point feature repo back to main by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1532](https://redirect.github.com/temporalio/sdk-go/pull/1532) - Warn on unhandled updates by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1533](https://redirect.github.com/temporalio/sdk-go/pull/1533) - Experimental cloud operations client by [@​cretz](https://redirect.github.com/cretz) in [https://github.com/temporalio/sdk-go/pull/1462](https://redirect.github.com/temporalio/sdk-go/pull/1462) - add Name method to ReceiveChannel and SendChannel interface by [@​bentveljanzx](https://redirect.github.com/bentveljanzx) in [https://github.com/temporalio/sdk-go/pull/1538](https://redirect.github.com/temporalio/sdk-go/pull/1538) - Test AllHandlersFinished in update validator by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1540](https://redirect.github.com/temporalio/sdk-go/pull/1540) - Fix some Deprecated go docs by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1542](https://redirect.github.com/temporalio/sdk-go/pull/1542) - Fix bug in updateWorkflowByID by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1548](https://redirect.github.com/temporalio/sdk-go/pull/1548) - Fix typed search attributes with SignalWithStartWorkflow by [@​Quinn-With-Two-Ns](https://redirect.github.com/Quinn-With-Two-Ns) in [https://github.com/temporalio/sdk-go/pull/1552](https://redirect.github.com/temporalio/sdk-go/pull/1552) - Add support for query parameter when listing schedules by [@​justinp-tt](https://redirect.github.com/justinp-tt) in [https://github.com/temporalio/sdk-go/pull/1556](https://redirect.github.com/temporalio/sdk-go/pull/1556) - Nexus by [@​bergundy](https://redirect.github.com/bergundy) in [https://github.com/temporalio/sdk-go/pull/1555](https://redirect.github.com/temporalio/sdk-go/pull/1555) ### [`v1.27.0`](https://redirect.github.com/temporalio/sdk-go/releases/tag/v1.27.0) [Compare Source](https://redirect.github.com/temporalio/sdk-go/compare/v1.26.1...v1.27.0) ### Reset workflow with Updates The Go SDK now supports reapplying Workflow Updates when resetting a workflow execution. **Note: Support for reapplying updates on workflow reset require a server version ≥1.24.0** ### Request failure code labeled metrics gRPC request failure metrics (`*request_failure`) emitted by the Go SDK now include the error status code as a tag under `status_code`. This can be disabled by setting `DisableErrorCodeMetricTags` on `client.Options`. See also: [#​1472](https://redirect.github.com/temporalio/sdk-go/pull/1472) ### 💥 BREAKING CHANGES This release includes some breaking changes for the experimental features Workflow Update and Worker Versioning. Users of these features should read the release notes carefully before upgrading. #### Workflow Update (Experimental) Based on users feedback this release makes some breaking changes to the Workflow Update API used by client and workflows code. ##### Client API changes - Merged `Client.UpdateWorkflowWithOptions` and `Client.UpdateWorkflow` into one API called `Client.UpdateWorkflow` that takes a `client.UpdateWorkflowOptions` struct. - `WaitPolicy` in `client.UpdateWorkflowOptions` was replaced with `WaitForStage`. `WaitForStage` is now a required parameter in `client.UpdateWorkflowOptions`. - `WaitForStage` is now properly respected by `Client.UpdateWorkflow`. Previously `Client.UpdateWorkflow` may have returned a handle before the desired `WaitForStage` was reached. ##### Workflow API changes - `workflow.SetUpdateHandler` and `workflow.SetUpdateHandlerWithOptions` Now require update handles to take a `workflow.Context` as the first argument. - `workflow.GetUpdateInfo` has been renamed to `workflow.GetCurrentUpdateInfo` . #### Worker Versioning (Experimental) Worker Versioning is a pre-release, experimental feature that simplifies managing code changes by allowing you to peg workflows to build versions. This change revamps and improves the API and deprecates the existing experience. The new APIs introduced with worker versioning are: - `GetWorkerVersioningRules` returns assignment and redirect rules for a given task queue. - `UpdateWorkerVersioningRules` updates assignment and redirect rules for a given task queue. - `DescribeTaskQueueEnhanced` extends the functionality of `DescribeTaskQueue` with workflow reachability status. A few APIs associated with legacy worker versioning have been deprecated: - `UpdateWorkerBuildIdCompatibility` replaced by `UpdateWorkerVersioningRules`. - `GetWorkerBuildIdCompatibility` replaced by `GetWorkerVersioningRules`. - `GetWorkerTaskReachability` replaced by `DescribeTaskQueueEnhanced`. **Note: These new Worker Versioning APIs require a server version ≥1.24.0** #### Internally call `grpc.NewClient` instead of `grpc.Dial` Internally the SDK now calls `grpc.NewClient` instead of `grpc.Dial` because it was deprecated in [google.golang.org/grpc](https://pkg.go.dev/google.golang.org/grpc#Dial) This should be a transparent change to most users, `google.golang.org/grpc` does call out one subtle difference: One subtle difference between NewClient and Dial and DialContext is that the former uses "dns" as the default name resolver, while the latter use "passthrough" for backward compatibility. This distinction should not matter to most users, but could matter to legacy users that specify a custom dialer and expect it to receive the target string directly. Some deprecated dial options like `WithBlock`, `WithTimeout`, `WithReturnConnectionError`, and `FailOnNonTempDialError` are now ignored by `grpc.NewClient`. See https://github.com/grpc/grpc-go/blob/master/Documentation/anti-patterns.md for more context. See also: [#​1488](https://redirect.github.com/temporalio/sdk-go/pull/1488) #### Child workflows now properly Continue-As-New in the `TestWorkflowEnvironment` In previous version of the Go SDK when a child workflow running in the test environment tried to continue as new the parent workflow would receive an error from the child workflow. Now the child workflow properly continues as new and the parent workflow will not receive an error. See also: [#​1437](https://redirect.github.com/temporalio/sdk-go/pull/1437) #### Specific Changes 2024-04-12 - [`c4bf074`](https://redirect.github.com/temporalio/sdk-go/commit/c4bf074) - datadog: Add tracer option to check error eligibility in the span ([#​1438](https://redirect.github.com/temporalio/sdk-go/issues/1438)) 2024-04-17 - [`69bc6c3`](https://redirect.github.com/temporalio/sdk-go/commit/69bc6c3) - Update reapply ([#​1436](https://redirect.github.com/temporalio/sdk-go/issues/1436)) 2024-04-23 - [`93c08b0`](https://redirect.github.com/temporalio/sdk-go/commit/93c08b0) - Ensure consistent labels for rpc metrics ([#​1444](https://redirect.github.com/temporalio/sdk-go/issues/1444)) 2024-04-24 - [`8361067`](https://redirect.github.com/temporalio/sdk-go/commit/8361067) - Disable UTF8-invalid tests when running CLI dev server ([#​1448](https://redirect.github.com/temporalio/sdk-go/issues/1448)) 2024-04-30 - [`fe44a47`](https://redirect.github.com/temporalio/sdk-go/commit/fe44a47) - Improve error message for missing body ([#​1451](https://redirect.github.com/temporalio/sdk-go/issues/1451)) 2024-05-01 - [`d051de6`](https://redirect.github.com/temporalio/sdk-go/commit/d051de6) - Option to redirect devserver stdout/stderr to a file ([#​1452](https://redirect.github.com/temporalio/sdk-go/issues/1452)) 2024-05-09 - [`386a6d3`](https://redirect.github.com/temporalio/sdk-go/commit/386a6d3) - Require update handler to have a context ([#​1457](https://redirect.github.com/temporalio/sdk-go/issues/1457)) 2024-05-09 - [`ded70a3`](https://redirect.github.com/temporalio/sdk-go/commit/ded70a3) - Add support for NextRetryDelay for local activities ([#​1456](https://redirect.github.com/temporalio/sdk-go/issues/1456)) 2024-05-10 - [`81cd5dc`](https://redirect.github.com/temporalio/sdk-go/commit/81cd5dc) - Fix QueryRejectCondition parameter in QueryWorkflowWithOptions ([#​1461](https://redirect.github.com/temporalio/sdk-go/issues/1461)) 2024-05-10 - [`c69831e`](https://redirect.github.com/temporalio/sdk-go/commit/c69831e) - Remove DisableStickyExecution ([#​1464](https://redirect.github.com/temporalio/sdk-go/issues/1464)) 2024-05-14 - [`3b68c6d`](https://redirect.github.com/temporalio/sdk-go/commit/3b68c6d) - Add request failure code label to metrics ([#​1472](https://redirect.github.com/temporalio/sdk-go/issues/1472)) 2024-05-17 - [`aa17647`](https://redirect.github.com/temporalio/sdk-go/commit/aa17647) - get-free-port: prevent duplicate ports on Linux ([#​1478](https://redirect.github.com/temporalio/sdk-go/issues/1478)) 2024-05-21 - [`06c0ebc`](https://redirect.github.com/temporalio/sdk-go/commit/06c0ebc) - Add `SetFailureConverter` to the activity and workflow test environments ([#​1484](https://redirect.github.com/temporalio/sdk-go/issues/1484)) 2024-05-21 - [`222d4cf`](https://redirect.github.com/temporalio/sdk-go/commit/222d4cf) - Fix gauge metrics with latest otel SDK ([#​1482](https://redirect.github.com/temporalio/sdk-go/issues/1482)) 2024-05-21 - [`725b428`](https://redirect.github.com/temporalio/sdk-go/commit/725b428) - Only record activity_succeed_endtoend_latency on success ([#​1481](https://redirect.github.com/temporalio/sdk-go/issues/1481)) 2024-05-21 - [`fb06909`](https://redirect.github.com/temporalio/sdk-go/commit/fb06909) - Send original update request back in response ([#​1480](https://redirect.github.com/temporalio/sdk-go/issues/1480)) 2024-05-22 - [`bf2c79d`](https://redirect.github.com/temporalio/sdk-go/commit/bf2c79d) - Switch to using Float64Gauge in otel integration ([#​1485](https://redirect.github.com/temporalio/sdk-go/issues/1485)) 2024-05-24 - [`a6ca6a5`](https://redirect.github.com/temporalio/sdk-go/commit/a6ca6a5) - Replace grpc.Dial with grpc.NewClient ([#​1488](https://redirect.github.com/temporalio/sdk-go/issues/1488)) 2024-05-28 - [`bcfa85a`](https://redirect.github.com/temporalio/sdk-go/commit/bcfa85a) - Workflow update client API refactor ([#​1489](https://redirect.github.com/temporalio/sdk-go/issues/1489)) 2024-05-31 - [`486c233`](https://redirect.github.com/temporalio/sdk-go/commit/486c233) - Minor logger improovments ([#​1495](https://redirect.github.com/temporalio/sdk-go/issues/1495)) 2024-05-31 - [`4dd1ed8`](https://redirect.github.com/temporalio/sdk-go/commit/4dd1ed8) - Fix bugs when using a custom `FailureConverter` in tests ([#​1490](https://redirect.github.com/temporalio/sdk-go/issues/1490)) 2024-06-06 - [`0df7ad5`](https://redirect.github.com/temporalio/sdk-go/commit/0df7ad5) - Bump GitHub Actions ([#​1503](https://redirect.github.com/temporalio/sdk-go/issues/1503)) 2024-06-06 - [`17193aa`](https://redirect.github.com/temporalio/sdk-go/commit/17193aa) - Manually copy proxy options ([#​1502](https://redirect.github.com/temporalio/sdk-go/issues/1502)) 2024-06-06 - [`5c171b7`](https://redirect.github.com/temporalio/sdk-go/commit/5c171b7) - Make backfill tests more robust ([#​1504](https://redirect.github.com/temporalio/sdk-go/issues/1504)) 2024-06-06 - [`9ecb2a4`](https://redirect.github.com/temporalio/sdk-go/commit/9ecb2a4) - Change GetUpdateInfo to GetCurrentUpdateInfo ([#​1505](https://redirect.github.com/temporalio/sdk-go/issues/1505)) 2024-06-06 - [`bf29944`](https://redirect.github.com/temporalio/sdk-go/commit/bf29944) - testsuite.StartDevServer: Respect timeout during dial ([#​1498](https://redirect.github.com/temporalio/sdk-go/issues/1498)) 2024-06-07 - [`c73a007`](https://redirect.github.com/temporalio/sdk-go/commit/c73a007) - Support the new versioning API ([#​1494](https://redirect.github.com/temporalio/sdk-go/issues/1494)) 2024-06-10 - [`d4ff1f6`](https://redirect.github.com/temporalio/sdk-go/commit/d4ff1f6) - Fix flake in TestUpdateAdmittedNoWorker ([#​1506](https://redirect.github.com/temporalio/sdk-go/issues/1506)) 2024-06-12 - [`38fe879`](https://redirect.github.com/temporalio/sdk-go/commit/38fe879) - Always run all the versioning tests ([#​1510](https://redirect.github.com/temporalio/sdk-go/issues/1510)) 2024-06-12 - [`a7c8208`](https://redirect.github.com/temporalio/sdk-go/commit/a7c8208) - Allow SDK to handle speculative WFT with command events ([#​1509](https://redirect.github.com/temporalio/sdk-go/issues/1509)) 2024-06-13 - [`2720358`](https://redirect.github.com/temporalio/sdk-go/commit/2720358) - Improve CI action ([#​1512](https://redirect.github.com/temporalio/sdk-go/issues/1512)) 2024-06-13 - [`30a29ce`](https://redirect.github.com/temporalio/sdk-go/commit/30a29ce) - Add integration test for reset with update events ([#​1507](https://redirect.github.com/temporalio/sdk-go/issues/1507)) 2024-06-13 - [`4c8b9e1`](https://redirect.github.com/temporalio/sdk-go/commit/4c8b9e1) - Update API to v1.34.0 ([#​1511](https://redirect.github.com/temporalio/sdk-go/issues/1511))

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.



This PR was generated by Mend Renovate. View the repository job log.

renovate[bot] commented 3 weeks ago

ℹ Artifact update notice

File name: backend/go.mod

In order to perform the update(s) described in the table above, Renovate ran the go get command, which resulted in the following additional change(s):

Details:

Package Change
github.com/envoyproxy/go-control-plane v0.12.0 -> v0.12.1-0.20240621013728-1eb8caab5155
github.com/grpc-ecosystem/grpc-gateway/v2 v2.19.1 -> v2.22.0
golang.org/x/net v0.24.0 -> v0.28.0
golang.org/x/oauth2 v0.17.0 -> v0.22.0
golang.org/x/sync v0.6.0 -> v0.8.0
google.golang.org/genproto/googleapis/api v0.0.0-20240415180920-8c6c420018be -> v0.0.0-20240827150818-7e3bb234dfed
google.golang.org/genproto/googleapis/rpc v0.0.0-20240415180920-8c6c420018be -> v0.0.0-20240827150818-7e3bb234dfed
google.golang.org/grpc v1.63.2 -> v1.66.0
google.golang.org/protobuf v1.33.0 -> v1.34.2
github.com/cespare/xxhash/v2 v2.2.0 -> v2.3.0
github.com/cncf/xds/go v0.0.0-20231128003011-0fa0005c9caa -> v0.0.0-20240423153145-555b57ec207b
github.com/prometheus/client_model v0.5.0 -> v0.6.0
go.temporal.io/api v1.32.0 -> v1.40.0
golang.org/x/crypto v0.22.0 -> v0.26.0
golang.org/x/mod v0.15.0 -> v0.17.0
golang.org/x/sys v0.19.0 -> v0.24.0
golang.org/x/term v0.19.0 -> v0.23.0
golang.org/x/text v0.14.0 -> v0.17.0
golang.org/x/tools v0.18.0 -> v0.21.1-0.20240508182429-e35e4ccd0d2d
github-actions[bot] commented 2 weeks ago

This PR has been marked as stale after 7 or more days of inactivity. Please have a maintainer add the on hold label if this PR should remain open. If there is no further activity or the on hold label is not added, this PR will be closed in 3 days.

renovate[bot] commented 1 week ago

Renovate Ignore Notification

Because you closed this PR without merging, Renovate will ignore this update (v1.30.0). You will get a PR once a newer version is released. To ignore this dependency forever, add it to the ignoreDeps array of your Renovate config.

If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.