From 13dd4fa29c179bb7e7b28b89d2f6bfdfb7f3486c Mon Sep 17 00:00:00 2001 From: Stephan Behnke Date: Wed, 11 Dec 2024 17:46:23 -0800 Subject: [PATCH] Bump SDK to 1.31 --- early-return/starter/main.go | 30 ++++++++++++++---------------- go.mod | 14 +++++++------- go.sum | 28 ++++++++++++++-------------- reqrespupdate/workflow_test.go | 26 ++++---------------------- 4 files changed, 39 insertions(+), 59 deletions(-) diff --git a/early-return/starter/main.go b/early-return/starter/main.go index ad54eb5d..dcd0df69 100644 --- a/early-return/starter/main.go +++ b/early-return/starter/main.go @@ -20,30 +20,28 @@ func main() { ctxWithTimeout, cancel := context.WithTimeout(context.Background(), 5*time.Second) defer cancel() - updateOperation := client.NewUpdateWithStartWorkflowOperation( - client.UpdateWorkflowOptions{ - UpdateName: earlyreturn.UpdateName, - WaitForStage: client.WorkflowUpdateStageCompleted, - }) - tx := earlyreturn.Transaction{ID: uuid.New(), SourceAccount: "Bob", TargetAccount: "Alice", Amount: 100} + workflowOptions := client.StartWorkflowOptions{ - ID: "early-return-workflow-ID-" + tx.ID, - TaskQueue: earlyreturn.TaskQueueName, - WithStartOperation: updateOperation, - } - we, err := c.ExecuteWorkflow(ctxWithTimeout, workflowOptions, earlyreturn.Workflow, tx) - if err != nil { - log.Fatalln("Error executing workflow:", err) + ID: "early-return-workflow-ID-" + tx.ID, + TaskQueue: earlyreturn.TaskQueueName, } - log.Println("Started workflow", "WorkflowID", we.GetID(), "RunID", we.GetRunID()) + updateOptions := client.UpdateWorkflowOptions{ + UpdateName: earlyreturn.UpdateName, + WaitForStage: client.WorkflowUpdateStageCompleted, + } - updateHandle, err := updateOperation.Get(ctxWithTimeout) + updateHandle, err := c.UpdateWithStartWorkflow(ctxWithTimeout, client.UpdateWithStartWorkflowOptions{ + StartWorkflowOperation: c.NewWithStartWorkflowOperation(workflowOptions, earlyreturn.Workflow), + UpdateOptions: updateOptions, + }) if err != nil { - log.Fatalln("Error obtaining update handle:", err) + log.Fatalln("Update-with-Start error:", err) } + log.Println("Started workflow", "WorkflowID", updateHandle.WorkflowID(), "RunID", updateHandle.RunID()) + err = updateHandle.Get(ctxWithTimeout, nil) if err != nil { // The workflow will continue running, cancelling the transaction. diff --git a/go.mod b/go.mod index 16f7f097..541dca17 100644 --- a/go.mod +++ b/go.mod @@ -9,11 +9,11 @@ require ( github.com/golang/snappy v0.0.4 github.com/google/uuid v1.6.0 github.com/hashicorp/go-plugin v1.4.5 - github.com/nexus-rpc/sdk-go v0.0.10 + github.com/nexus-rpc/sdk-go v0.1.0 github.com/opentracing/opentracing-go v1.2.0 github.com/pborman/uuid v1.2.1 github.com/prometheus/client_golang v1.18.0 - github.com/stretchr/testify v1.9.0 + github.com/stretchr/testify v1.10.0 github.com/temporalio/tctl v1.18.0 github.com/uber-go/tally/v4 v4.1.7 github.com/uber/jaeger-client-go v2.30.0+incompatible @@ -21,14 +21,15 @@ require ( go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.16.0 go.opentelemetry.io/otel/sdk v1.27.0 go.opentelemetry.io/otel/trace v1.27.0 - go.temporal.io/api v1.38.0 - go.temporal.io/sdk v1.29.1 + go.temporal.io/api v1.43.0 + go.temporal.io/sdk v1.31.0 go.temporal.io/sdk/contrib/datadog v0.2.0 go.temporal.io/sdk/contrib/opentelemetry v0.6.0 go.temporal.io/sdk/contrib/opentracing v0.1.0 go.temporal.io/sdk/contrib/tally v0.2.0 go.uber.org/multierr v1.11.0 go.uber.org/zap v1.24.0 + google.golang.org/grpc v1.66.0 google.golang.org/protobuf v1.34.2 gopkg.in/DataDog/dd-trace-go.v1 v1.59.0 gopkg.in/square/go-jose.v2 v2.6.0 @@ -95,8 +96,7 @@ require ( golang.org/x/time v0.3.0 // indirect golang.org/x/tools v0.25.0 // indirect golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect - google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd // indirect - google.golang.org/grpc v1.65.0 // indirect + google.golang.org/genproto/googleapis/api v0.0.0-20240827150818-7e3bb234dfed // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240827150818-7e3bb234dfed // indirect inet.af/netaddr v0.0.0-20230525184311-b8eac61e914a // indirect ) diff --git a/go.sum b/go.sum index 4ad3cf7c..4d00d696 100644 --- a/go.sum +++ b/go.sum @@ -200,8 +200,8 @@ github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lN github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= github.com/mwitkow/go-conntrack v0.0.0-20161129095857-cc309e4a2223/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f/go.mod h1:qRWi+5nqEBWmkhHvq77mSJWrCKwh8bxhgT7d/eI7P4U= -github.com/nexus-rpc/sdk-go v0.0.10 h1:7jEPUlsghxoD4OJ2H8YbFJ1t4wbxsUef7yZgBfyY3uA= -github.com/nexus-rpc/sdk-go v0.0.10/go.mod h1:TpfkM2Cw0Rlk9drGkoiSMpFqflKTiQLWUNyKJjF8mKQ= +github.com/nexus-rpc/sdk-go v0.1.0 h1:PUL/0vEY1//WnqyEHT5ao4LBRQ6MeNUihmnNGn0xMWY= +github.com/nexus-rpc/sdk-go v0.1.0/go.mod h1:TpfkM2Cw0Rlk9drGkoiSMpFqflKTiQLWUNyKJjF8mKQ= github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e/go.mod h1:zD1mROLANZcx1PVRCS0qkT7pwLkGfwJo4zjcN/Tysno= github.com/oklog/run v1.1.0 h1:GEenZ1cK0+q0+wsJew9qUg/DyD8k3JzYsZAi5gYi2mA= github.com/oklog/run v1.1.0/go.mod h1:sVPdnTZT1zYwAJeCMu2Th4T21pA3FPOQRfWjQlk7DVU= @@ -277,8 +277,8 @@ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= -github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= +github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA= +github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/temporalio/tctl v1.18.0 h1:f4kar5U66kPWKcHX767QHBzfhAXVbxdeWREeNvPxFTQ= github.com/temporalio/tctl v1.18.0/go.mod h1:xhPOWigAcef9+Ci11hZHgxCsfcjXKO7Upt6V6snuCWc= github.com/tinylib/msgp v1.1.8 h1:FCXC1xanKO4I8plpHGH2P7koL/RzZs12l/+r7vakfm0= @@ -312,11 +312,11 @@ go.opentelemetry.io/otel/trace v1.27.0 h1:IqYb813p7cmbHk0a5y6pD5JPakbVfftRXABGt5 go.opentelemetry.io/otel/trace v1.27.0/go.mod h1:6RiD1hkAprV4/q+yd2ln1HG9GoPx39SuvvstaLBl+l4= go.opentelemetry.io/proto/otlp v0.7.0/go.mod h1:PqfVotwruBrMGOCsRd/89rSnXhoiJIqeYNgFYFoEGnI= go.temporal.io/api v1.5.0/go.mod h1:BqKxEJJYdxb5dqf0ODfzfMxh8UEQ5L3zKS51FiIYYkA= -go.temporal.io/api v1.38.0 h1:L5i+Ai7UoBa2Gq/goVHLY32064AgawxPDLkKm4I7fu4= -go.temporal.io/api v1.38.0/go.mod h1:fmh06EjstyrPp6SHbjJo7yYHBfHamPE4SytM+2NRejc= +go.temporal.io/api v1.43.0 h1:lBhq+u5qFJqGMXwWsmg/i8qn1UA/3LCwVc88l2xUMHg= +go.temporal.io/api v1.43.0/go.mod h1:1WwYUMo6lao8yl0371xWUm13paHExN5ATYT/B7QtFis= go.temporal.io/sdk v1.12.0/go.mod h1:lSp3lH1lI0TyOsus0arnO3FYvjVXBZGi/G7DjnAnm6o= -go.temporal.io/sdk v1.29.1 h1:y+sUMbUhTU9rj50mwIZAPmcXCtgUdOWS9xHDYRYSgZ0= -go.temporal.io/sdk v1.29.1/go.mod h1:kp//DRvn3CqQVBCtjL51Oicp9wrZYB2s6row1UgzcKQ= +go.temporal.io/sdk v1.31.0 h1:CLYiP0R5Sdj0gq8LyYKDDz4ccGOdJPR8wNGJU0JGwj8= +go.temporal.io/sdk v1.31.0/go.mod h1:8U8H7rF9u4Hyb4Ry9yiEls5716DHPNvVITPNkgWUwE8= go.temporal.io/sdk/contrib/datadog v0.2.0 h1:YUpkVncR3dEg4dnkWTWoDPVh6duU079RWIswsQ2u6LM= go.temporal.io/sdk/contrib/datadog v0.2.0/go.mod h1:yOOdVth8SQUFZSAtCFY8NvTZ2joxnAVSK9/1OfAMsw0= go.temporal.io/sdk/contrib/opentelemetry v0.6.0 h1:rNBArDj5iTUkcMwKocUShoAW59o6HdS7Nq4CTp4ldj8= @@ -512,10 +512,10 @@ google.golang.org/genproto v0.0.0-20200423170343-7949de9c1215/go.mod h1:55QSHmfG google.golang.org/genproto v0.0.0-20200513103714-09dca8ec2884/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c= google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= google.golang.org/genproto v0.0.0-20210909211513-a8c4777a87af/go.mod h1:eFjDcFEctNawg4eG61bRv87N7iHBWyVhJu7u1kqDUXY= -google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd h1:BBOTEWLuuEGQy9n1y9MhVJ9Qt0BDu21X8qZs71/uPZo= -google.golang.org/genproto/googleapis/api v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:fO8wJzT2zbQbAjbIoos1285VfEIYKDDY+Dt+WpTkh6g= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd h1:6TEm2ZxXoQmFWFlt1vNxvVOa1Q0dXFQD1m/rYjXmS0E= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240822170219-fc7c04adadcd/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= +google.golang.org/genproto/googleapis/api v0.0.0-20240827150818-7e3bb234dfed h1:3RgNmBoI9MZhsj3QxC+AP/qQhNwpCLOvYDYYsFrhFt0= +google.golang.org/genproto/googleapis/api v0.0.0-20240827150818-7e3bb234dfed/go.mod h1:OCdP9MfskevB/rbYvHTsXTtKC+3bHWajPdoKgjcYkfo= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240827150818-7e3bb234dfed h1:J6izYgfBXAI3xTKLgxzTmUltdYaLsuBxFCgDHWJ/eXg= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240827150818-7e3bb234dfed/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU= google.golang.org/grpc v1.12.0/go.mod h1:yo6s7OP7yaDglbqo1J04qKzAhqBH6lvTonzMVmEdcZw= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg= @@ -525,8 +525,8 @@ google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3Iji google.golang.org/grpc v1.33.1/go.mod h1:fr5YgcSWrqhRRxogOsw7RzIpsmvOZ6IcH4kBYTpR3n0= google.golang.org/grpc v1.36.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= google.golang.org/grpc v1.40.0/go.mod h1:ogyxbiOoUXAkP+4+xa6PZSE9DZgIHtSpzjDTB9KAK34= -google.golang.org/grpc v1.65.0 h1:bs/cUb4lp1G5iImFFd3u5ixQzweKizoZJAwBNLR42lc= -google.golang.org/grpc v1.65.0/go.mod h1:WgYC2ypjlB0EiQi6wdKixMqukr6lBc0Vo+oOgjrM5ZQ= +google.golang.org/grpc v1.66.0 h1:DibZuoBznOxbDQxRINckZcUvnCEvrW9pcWIE2yF9r1c= +google.golang.org/grpc v1.66.0/go.mod h1:s3/l6xSSCURdVfAnL+TqCNMyTDAGN6+lZeVxnZR128Y= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= diff --git a/reqrespupdate/workflow_test.go b/reqrespupdate/workflow_test.go index 8d433e05..df0ec42f 100644 --- a/reqrespupdate/workflow_test.go +++ b/reqrespupdate/workflow_test.go @@ -9,24 +9,6 @@ import ( "go.temporal.io/sdk/testsuite" ) -type updateCallback struct { - accept func() - reject func(error) - complete func(interface{}, error) -} - -func (uc *updateCallback) Accept() { - uc.accept() -} - -func (uc *updateCallback) Reject(err error) { - uc.reject(err) -} - -func (uc *updateCallback) Complete(success interface{}, err error) { - uc.complete(success, err) -} - func TestUppercaseWorkflow(t *testing.T) { // Create env var suite testsuite.WorkflowTestSuite @@ -38,19 +20,19 @@ func TestUppercaseWorkflow(t *testing.T) { for i := 0; i < 550; i++ { i := i env.RegisterDelayedCallback(func() { - env.UpdateWorkflow(reqrespupdate.UpdateHandler, "test id", &updateCallback{ - accept: func() { + env.UpdateWorkflow(reqrespupdate.UpdateHandler, "test id", &testsuite.TestUpdateCallback{ + OnAccept: func() { if i >= 500 { require.Fail(t, "update should fail since it should be trying to continue-as-new") } }, - reject: func(err error) { + OnReject: func(err error) { if i < 500 { require.Fail(t, "this update should not fail") } require.Error(t, err) }, - complete: func(response interface{}, err error) { + OnComplete: func(response interface{}, err error) { if i >= 500 { require.Fail(t, "update should fail since it should be trying to continue-as-new") }