From cd5a0fb577956f1aa346b805f58f9fd9c233f7fd Mon Sep 17 00:00:00 2001 From: Rowan Seymour Date: Mon, 16 Dec 2024 16:02:53 -0500 Subject: [PATCH] Update to latest gocommon and goflow --- core/tasks/cron.go | 9 +-- core/tasks/handler/handle_contact_event.go | 15 ++--- core/tasks/metrics/cron.go | 66 ++++++---------------- go.mod | 21 ++++--- go.sum | 42 +++++++------- web/flow/testdata/inspect.json | 4 -- 6 files changed, 53 insertions(+), 104 deletions(-) diff --git a/core/tasks/cron.go b/core/tasks/cron.go index 50c02732e..2815ee459 100644 --- a/core/tasks/cron.go +++ b/core/tasks/cron.go @@ -6,8 +6,8 @@ import ( "sync" "time" - "github.com/aws/aws-sdk-go-v2/aws" "github.com/aws/aws-sdk-go-v2/service/cloudwatch/types" + "github.com/nyaruka/gocommon/aws/cwatch" "github.com/nyaruka/gocommon/jsonx" "github.com/nyaruka/mailroom/runtime" "github.com/nyaruka/mailroom/utils/crons" @@ -68,12 +68,7 @@ func recordCronExecution(name string, r func(context.Context, *runtime.Runtime) elapsed := time.Since(started) elapsedSeconds := elapsed.Seconds() - rt.CW.Queue(types.MetricDatum{ - MetricName: aws.String("CronTaskDuration"), - Dimensions: []types.Dimension{{Name: aws.String("TaskName"), Value: aws.String(name)}}, - Value: aws.Float64(elapsedSeconds), - Unit: types.StandardUnitSeconds, - }) + rt.CW.Queue(cwatch.Datum("CronTaskDuration", elapsedSeconds, types.StandardUnitSeconds, cwatch.Dimension("TaskName", name))) rc := rt.RP.Get() defer rc.Close() diff --git a/core/tasks/handler/handle_contact_event.go b/core/tasks/handler/handle_contact_event.go index dc5211871..854989833 100644 --- a/core/tasks/handler/handle_contact_event.go +++ b/core/tasks/handler/handle_contact_event.go @@ -7,10 +7,10 @@ import ( "log/slog" "time" - "github.com/aws/aws-sdk-go-v2/aws" "github.com/aws/aws-sdk-go-v2/service/cloudwatch/types" "github.com/gomodule/redigo/redis" "github.com/jmoiron/sqlx" + "github.com/nyaruka/gocommon/aws/cwatch" "github.com/nyaruka/gocommon/dbutil" "github.com/nyaruka/gocommon/jsonx" "github.com/nyaruka/mailroom/core/models" @@ -100,15 +100,10 @@ func (t *HandleContactEventTask) Perform(ctx context.Context, rt *runtime.Runtim err = performHandlerTask(ctx, rt, oa, t.ContactID, ctask) // send metrics for processing time and lag from queue time - rt.CW.Queue(types.MetricDatum{ - MetricName: aws.String("HandlerTaskDuration"), - Value: aws.Float64(float64(time.Since(start)) / float64(time.Second)), - Unit: types.StandardUnitSeconds, - }, types.MetricDatum{ - MetricName: aws.String("HandlerTaskLatency"), - Value: aws.Float64(float64(time.Since(taskPayload.QueuedOn)) / float64(time.Second)), - Unit: types.StandardUnitSeconds, - }) + rt.CW.Queue( + cwatch.Datum("HandlerTaskDuration", float64(time.Since(start))/float64(time.Second), types.StandardUnitSeconds), + cwatch.Datum("HandlerTaskLatency", float64(time.Since(taskPayload.QueuedOn))/float64(time.Second), types.StandardUnitSeconds), + ) // if we get an error processing an event, requeue it for later and return our error if err != nil { diff --git a/core/tasks/metrics/cron.go b/core/tasks/metrics/cron.go index 02c84e79a..e7d948a08 100644 --- a/core/tasks/metrics/cron.go +++ b/core/tasks/metrics/cron.go @@ -5,8 +5,8 @@ import ( "log/slog" "time" - "github.com/aws/aws-sdk-go-v2/aws" "github.com/aws/aws-sdk-go-v2/service/cloudwatch/types" + "github.com/nyaruka/gocommon/aws/cwatch" "github.com/nyaruka/mailroom/core/tasks" "github.com/nyaruka/mailroom/runtime" ) @@ -50,55 +50,21 @@ func (c *metricsCron) Run(ctx context.Context, rt *runtime.Runtime) (map[string] c.dbWaitDuration = dbStats.WaitDuration c.redisWaitDuration = redisStats.WaitDuration - dims := []types.Dimension{ - {Name: aws.String("Host"), Value: aws.String(rt.Config.InstanceID)}, - {Name: aws.String("App"), Value: aws.String("mailroom")}, - } - - rt.CW.Queue(types.MetricDatum{ - MetricName: aws.String("DBConnectionsInUse"), - Dimensions: dims, - Value: aws.Float64(float64(dbStats.InUse)), - Unit: types.StandardUnitCount, - }, types.MetricDatum{ - MetricName: aws.String("DBConnectionWaitDuration"), - Dimensions: dims, - Value: aws.Float64(float64(dbWaitDurationInPeriod / time.Second)), - Unit: types.StandardUnitSeconds, - }, types.MetricDatum{ - MetricName: aws.String("RedisConnectionsInUse"), - Dimensions: dims, - Value: aws.Float64(float64(redisStats.ActiveCount)), - Unit: types.StandardUnitCount, - }, types.MetricDatum{ - MetricName: aws.String("RedisConnectionsWaitDuration"), - Dimensions: dims, - Value: aws.Float64(float64(redisWaitDurationInPeriod / time.Second)), - Unit: types.StandardUnitSeconds, - }) - - rt.CW.Queue(types.MetricDatum{ - MetricName: aws.String("QueuedTasks"), - Dimensions: []types.Dimension{ - {Name: aws.String("QueueName"), Value: aws.String("handler")}, - }, - Value: aws.Float64(float64(handlerSize)), - Unit: types.StandardUnitCount, - }, types.MetricDatum{ - MetricName: aws.String("QueuedTasks"), - Dimensions: []types.Dimension{ - {Name: aws.String("QueueName"), Value: aws.String("batch")}, - }, - Value: aws.Float64(float64(batchSize)), - Unit: types.StandardUnitCount, - }, types.MetricDatum{ - MetricName: aws.String("QueuedTasks"), - Dimensions: []types.Dimension{ - {Name: aws.String("QueueName"), Value: aws.String("throttled")}, - }, - Value: aws.Float64(float64(throttledSize)), - Unit: types.StandardUnitCount, - }) + hostDim := cwatch.Dimension("Host", rt.Config.InstanceID) + appDim := cwatch.Dimension("App", "mailroom") + + rt.CW.Queue( + cwatch.Datum("DBConnectionsInUse", float64(dbStats.InUse), types.StandardUnitCount, hostDim, appDim), + cwatch.Datum("DBConnectionWaitDuration", float64(dbWaitDurationInPeriod/time.Second), types.StandardUnitSeconds, hostDim, appDim), + cwatch.Datum("RedisConnectionsInUse", float64(redisStats.ActiveCount), types.StandardUnitCount, hostDim, appDim), + cwatch.Datum("RedisConnectionsWaitDuration", float64(redisWaitDurationInPeriod/time.Second), types.StandardUnitSeconds, hostDim, appDim), + ) + + rt.CW.Queue( + cwatch.Datum("QueuedTasks", float64(handlerSize), types.StandardUnitCount, cwatch.Dimension("QueueName", "handler")), + cwatch.Datum("QueuedTasks", float64(batchSize), types.StandardUnitCount, cwatch.Dimension("QueueName", "batch")), + cwatch.Datum("QueuedTasks", float64(throttledSize), types.StandardUnitCount, cwatch.Dimension("QueueName", "throttled")), + ) return map[string]any{ "db_inuse": dbStats.InUse, diff --git a/go.mod b/go.mod index ac8ba542f..ca15b62e2 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ require ( github.com/buger/jsonparser v1.1.1 github.com/elastic/go-elasticsearch/v8 v8.16.0 github.com/getsentry/sentry-go v0.30.0 - github.com/go-chi/chi/v5 v5.1.0 + github.com/go-chi/chi/v5 v5.2.0 github.com/go-playground/validator/v10 v10.23.0 github.com/golang-jwt/jwt v3.2.2+incompatible github.com/golang/protobuf v1.5.4 @@ -23,11 +23,11 @@ require ( github.com/jmoiron/sqlx v1.4.0 github.com/lib/pq v1.10.9 github.com/nyaruka/ezconf v0.3.0 - github.com/nyaruka/gocommon v1.60.3 - github.com/nyaruka/goflow v0.225.8 + github.com/nyaruka/gocommon v1.60.4 + github.com/nyaruka/goflow v0.226.0 github.com/nyaruka/null/v3 v3.0.0 github.com/nyaruka/redisx v0.8.1 - github.com/nyaruka/rp-indexer/v9 v9.3.0 + github.com/nyaruka/rp-indexer/v9 v9.3.4 github.com/patrickmn/go-cache v2.1.0+incompatible github.com/prometheus/client_model v0.6.1 github.com/prometheus/common v0.61.0 @@ -35,15 +35,15 @@ require ( github.com/samber/slog-sentry v1.2.2 github.com/shopspring/decimal v1.4.0 github.com/stretchr/testify v1.10.0 - google.golang.org/api v0.211.0 + google.golang.org/api v0.212.0 ) require ( cel.dev/expr v0.19.1 // indirect cloud.google.com/go v0.116.0 // indirect - cloud.google.com/go/auth v0.12.1 // indirect + cloud.google.com/go/auth v0.13.0 // indirect cloud.google.com/go/auth/oauth2adapt v0.2.6 // indirect - cloud.google.com/go/compute/metadata v0.5.2 // indirect + cloud.google.com/go/compute/metadata v0.6.0 // indirect cloud.google.com/go/firestore v1.17.0 // indirect cloud.google.com/go/iam v1.3.0 // indirect cloud.google.com/go/longrunning v0.6.3 // indirect @@ -100,7 +100,6 @@ require ( github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/naoina/go-stringutil v0.1.0 // indirect github.com/naoina/toml v0.1.1 // indirect - github.com/nyaruka/librato v1.1.1 // indirect github.com/nyaruka/null/v2 v2.0.3 // indirect github.com/nyaruka/phonenumbers v1.4.3 // indirect github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 // indirect @@ -116,8 +115,8 @@ require ( go.opentelemetry.io/otel/sdk v1.32.0 // indirect go.opentelemetry.io/otel/sdk/metric v1.32.0 // indirect go.opentelemetry.io/otel/trace v1.32.0 // indirect - golang.org/x/crypto v0.30.0 // indirect - golang.org/x/exp v0.0.0-20241210194714-1829a127f884 // indirect + golang.org/x/crypto v0.31.0 // indirect + golang.org/x/exp v0.0.0-20241215155358-4a5509556b9e // indirect golang.org/x/net v0.32.0 // indirect golang.org/x/oauth2 v0.24.0 // indirect golang.org/x/sync v0.10.0 // indirect @@ -130,7 +129,7 @@ require ( google.golang.org/genproto/googleapis/rpc v0.0.0-20241209162323-e6fa225c2576 // indirect google.golang.org/grpc v1.68.1 // indirect google.golang.org/grpc/stats/opentelemetry v0.0.0-20241028142157-ada6787961b3 // indirect - google.golang.org/protobuf v1.35.2 // indirect + google.golang.org/protobuf v1.36.0 // indirect gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go.sum b/go.sum index ebce0bdd3..29bf126cb 100644 --- a/go.sum +++ b/go.sum @@ -3,12 +3,12 @@ cel.dev/expr v0.19.1/go.mod h1:MrpN08Q+lEBs+bGYdLxxHkZoUSsCp0nSKTs0nTymJgw= cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= cloud.google.com/go v0.116.0 h1:B3fRrSDkLRt5qSHWe40ERJvhvnQwdZiHu0bJOpldweE= cloud.google.com/go v0.116.0/go.mod h1:cEPSRWPzZEswwdr9BxE6ChEn01dWlTaF05LiC2Xs70U= -cloud.google.com/go/auth v0.12.1 h1:n2Bj25BUMM0nvE9D2XLTiImanwZhO3DkfWSYS/SAJP4= -cloud.google.com/go/auth v0.12.1/go.mod h1:BFMu+TNpF3DmvfBO9ClqTR/SiqVIm7LukKF9mbendF4= +cloud.google.com/go/auth v0.13.0 h1:8Fu8TZy167JkW8Tj3q7dIkr2v4cndv41ouecJx0PAHs= +cloud.google.com/go/auth v0.13.0/go.mod h1:COOjD9gwfKNKz+IIduatIhYJQIc0mG3H102r/EMxX6Q= cloud.google.com/go/auth/oauth2adapt v0.2.6 h1:V6a6XDu2lTwPZWOawrAa9HUK+DB2zfJyTuciBG5hFkU= cloud.google.com/go/auth/oauth2adapt v0.2.6/go.mod h1:AlmsELtlEBnaNTL7jCj8VQFLy6mbZv0s4Q7NGBeQ5E8= -cloud.google.com/go/compute/metadata v0.5.2 h1:UxK4uu/Tn+I3p2dYWTfiX4wva7aYlKixAHn3fyqngqo= -cloud.google.com/go/compute/metadata v0.5.2/go.mod h1:C66sj2AluDcIqakBq/M8lw8/ybHgOZqin2obFxa/E5k= +cloud.google.com/go/compute/metadata v0.6.0 h1:A6hENjEsCDtC1k8byVsgwvVcioamEHvZ4j01OwKxG9I= +cloud.google.com/go/compute/metadata v0.6.0/go.mod h1:FjyFAW1MW0C203CEOMDTu3Dk1FlqW3Rga40jzHL4hfg= cloud.google.com/go/firestore v1.17.0 h1:iEd1LBbkDZTFsLw3sTH50eyg4qe8eoG6CjocmEXO9aQ= cloud.google.com/go/firestore v1.17.0/go.mod h1:69uPx1papBsY8ZETooc71fOhoKkD70Q1DwMrtKuOT/Y= cloud.google.com/go/iam v1.3.0 h1:4Wo2qTaGKFtajbLpF6I4mywg900u3TLlHDb6mriLDPU= @@ -128,8 +128,8 @@ github.com/gabriel-vasile/mimetype v1.4.7 h1:SKFKl7kD0RiPdbht0s7hFtjl489WcQ1VyPW github.com/gabriel-vasile/mimetype v1.4.7/go.mod h1:GDlAgAyIRT27BhFl53XNAFtfjzOkLaF35JdEG0P7LtU= github.com/getsentry/sentry-go v0.30.0 h1:lWUwDnY7sKHaVIoZ9wYqRHJ5iEmoc0pqcRqFkosKzBo= github.com/getsentry/sentry-go v0.30.0/go.mod h1:WU9B9/1/sHDqeV8T+3VwwbjeR5MSXs/6aqG3mqZrezA= -github.com/go-chi/chi/v5 v5.1.0 h1:acVI1TYaD+hhedDJ3r54HyA6sExp3HfXq7QWEEY/xMw= -github.com/go-chi/chi/v5 v5.1.0/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8= +github.com/go-chi/chi/v5 v5.2.0 h1:Aj1EtB0qR2Rdo2dG4O94RIU35w2lvQSj6BRA4+qwFL0= +github.com/go-chi/chi/v5 v5.2.0/go.mod h1:DslCQbL2OYiznFReuXYUmQ2hGd1aDpCnlMNITLSKoi8= github.com/go-errors/errors v1.4.2 h1:J6MZopCL4uSllY1OfXM374weqZFFItUbrImctkmUxIA= github.com/go-errors/errors v1.4.2/go.mod h1:sIVyrIiJhuEF+Pj9Ebtd6P/rEYROXFi3BopGUQ5a5Og= github.com/go-logr/logr v1.2.2/go.mod h1:jdQByPbusPIv2/zmleS9BjJVeZ6kBagPoEUsqbVz/1A= @@ -224,12 +224,10 @@ github.com/naoina/toml v0.1.1 h1:PT/lllxVVN0gzzSqSlHEmP8MJB4MY2U7STGxiouV4X8= github.com/naoina/toml v0.1.1/go.mod h1:NBIhNtsFMo3G2szEBne+bO4gS192HuIYRqfvOWb4i1E= github.com/nyaruka/ezconf v0.3.0 h1:kGvJqVN8AHowb4HdaHAviJ0Z3yI5Pyekp1WqibFEaGk= github.com/nyaruka/ezconf v0.3.0/go.mod h1:89GUW6EPRNLIxT7lC4LWnjWTgZeQwRoX7lBmc8ralAU= -github.com/nyaruka/gocommon v1.60.3 h1:fPQ9t6NX+mu7JQ7nXefgpBs8paqGvGXq3eA7VscsAVo= -github.com/nyaruka/gocommon v1.60.3/go.mod h1:kFJuOq8COneV7ssfK6xgCMJ8gP8fQifLQnNXBnE4YL0= -github.com/nyaruka/goflow v0.225.8 h1:rDc3P3KL8sNlXUFBi0UmBvMOd3eCUhUrkO3RbYYiW7o= -github.com/nyaruka/goflow v0.225.8/go.mod h1:spXtSWgS7dusHIfUFCvJGjSMc7d4FX9Abl6S7tg49ks= -github.com/nyaruka/librato v1.1.1 h1:0nTYtJLl3Sn7lX3CuHsLf+nXy1k/tGV0OjVxLy3Et4s= -github.com/nyaruka/librato v1.1.1/go.mod h1:fme1Fu1PT2qvkaBZyw8WW+SrnFe2qeeCWpvqmAaKAKE= +github.com/nyaruka/gocommon v1.60.4 h1:QpnSJailgaXpfjFjjuKTy/4NufgfmGfdFGib8khXm9o= +github.com/nyaruka/gocommon v1.60.4/go.mod h1:kFJuOq8COneV7ssfK6xgCMJ8gP8fQifLQnNXBnE4YL0= +github.com/nyaruka/goflow v0.226.0 h1:mVJBy1ojDSWdnPx/Y/YPflcKIMgmXjM3oC6VVCRTBo4= +github.com/nyaruka/goflow v0.226.0/go.mod h1:spXtSWgS7dusHIfUFCvJGjSMc7d4FX9Abl6S7tg49ks= github.com/nyaruka/null/v2 v2.0.3 h1:rdmMRQyVzrOF3Jff/gpU/7BDR9mQX0lcLl4yImsA3kw= github.com/nyaruka/null/v2 v2.0.3/go.mod h1:OCVeCkCXwrg5/qE6RU0c1oUVZBy+ZDrT+xYg1XSaIWA= github.com/nyaruka/null/v3 v3.0.0 h1:JvOiNuKmRBFHxzZFt4sWii+ewmMkCQ1vO7X0clTNn6E= @@ -238,8 +236,8 @@ github.com/nyaruka/phonenumbers v1.4.3 h1:tR71UJ+DZu7TSkxoG8JI8HzHJkPD/m4KNiUX34 github.com/nyaruka/phonenumbers v1.4.3/go.mod h1:gv+CtldaFz+G3vHHnasBSirAi3O2XLqZzVWz4V1pl2E= github.com/nyaruka/redisx v0.8.1 h1:d9Hc8nfSKTSEU+bx+YrB13d6bzAgiiHygk4jg/Q4nb4= github.com/nyaruka/redisx v0.8.1/go.mod h1:2TUmkDvprPInnmInR5AEbCm0zRRewkvSDVLsO+Do6iI= -github.com/nyaruka/rp-indexer/v9 v9.3.0 h1:8Thnt7k6/anEYcM3hIY+ObzF3JtO2/8EbDmb4JEAzsc= -github.com/nyaruka/rp-indexer/v9 v9.3.0/go.mod h1:YrHQx+ImBKRUQ4RWFJad1IlcMWlMyry/72SxAVCCgIU= +github.com/nyaruka/rp-indexer/v9 v9.3.4 h1:VtAvXSNNdzULbbvDKzWx+17E53CIgSjisYMeC0w0a3s= +github.com/nyaruka/rp-indexer/v9 v9.3.4/go.mod h1:BnbYed9lCPT8Q+p5BpO7+errhTMo7x0Y0AWjR1BraCk= github.com/patrickmn/go-cache v2.1.0+incompatible h1:HRMgzkcYKYpi3C8ajMPV8OFXaaRUnok+kx1WdO15EQc= github.com/patrickmn/go-cache v2.1.0+incompatible/go.mod h1:3Qf8kWWT7OJRJbdiICTKqZju1ZixQ/KpMGzzAfe6+WQ= github.com/pingcap/errors v0.11.4 h1:lFuQV/oaUMGcD2tqt+01ROSmJs75VG1ToEOkZIZ4nE4= @@ -300,11 +298,11 @@ go.opentelemetry.io/otel/trace v1.32.0/go.mod h1:+i4rkvCraA+tG6AzwloGaCtkx53Fa+L golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.30.0 h1:RwoQn3GkWiMkzlX562cLB7OxWvjH1L8xutO2WoJcRoY= -golang.org/x/crypto v0.30.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk= +golang.org/x/crypto v0.31.0 h1:ihbySMvVjLAeSH1IbfcRTkD/iNscyz8rGzjF/E5hV6U= +golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= -golang.org/x/exp v0.0.0-20241210194714-1829a127f884 h1:Y/Mj/94zIQQGHVSv1tTtQBDaQaJe62U9bkDZKKyhPCU= -golang.org/x/exp v0.0.0-20241210194714-1829a127f884/go.mod h1:qj5a5QZpwLU2NLQudwIN5koi3beDhSAlJwa67PuM98c= +golang.org/x/exp v0.0.0-20241215155358-4a5509556b9e h1:4qufH0hlUYs6AO6XmZC3GqfDPGSXHVXUFR6OND+iJX4= +golang.org/x/exp v0.0.0-20241215155358-4a5509556b9e/go.mod h1:qj5a5QZpwLU2NLQudwIN5koi3beDhSAlJwa67PuM98c= golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE= golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU= golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= @@ -358,8 +356,8 @@ golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtn golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/api v0.211.0 h1:IUpLjq09jxBSV1lACO33CGY3jsRcbctfGzhj+ZSE/Bg= -google.golang.org/api v0.211.0/go.mod h1:XOloB4MXFH4UTlQSGuNUxw0UT74qdENK8d6JNsXKLi0= +google.golang.org/api v0.212.0 h1:BcRj3MJfHF3FYD29rk7u9kuu1SyfGqfHcA0hSwKqkHg= +google.golang.org/api v0.212.0/go.mod h1:gICpLlpp12/E8mycRMzgy3SQ9cFh2XnVJ6vJi/kQbvI= google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM= google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4= google.golang.org/appengine/v2 v2.0.6 h1:LvPZLGuchSBslPBp+LAhihBeGSiRh1myRoYK4NtuBIw= @@ -393,8 +391,8 @@ google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpAD google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= google.golang.org/protobuf v1.30.0/go.mod h1:HV8QOd/L58Z+nl8r43ehVNZIU/HEI6OcFqwMG9pJV4I= -google.golang.org/protobuf v1.35.2 h1:8Ar7bF+apOIoThw1EdZl0p1oWvMqTHmpA2fRTyZO8io= -google.golang.org/protobuf v1.35.2/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= +google.golang.org/protobuf v1.36.0 h1:mjIs9gYtt56AzC4ZaffQuh88TZurBGhIJMBZGSxNerQ= +google.golang.org/protobuf v1.36.0/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc h1:2gGKlE2+asNV9m7xrywl36YYNnBG5ZQ0r/BOOxqPpmk= gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc/go.mod h1:m7x9LTH6d71AHyAX77c9yqWCCa3UKHcVEj9y7hAtKDk= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/web/flow/testdata/inspect.json b/web/flow/testdata/inspect.json index df6ccbf39..a1fbd75f6 100644 --- a/web/flow/testdata/inspect.json +++ b/web/flow/testdata/inspect.json @@ -71,7 +71,6 @@ ], "issues": [], "results": [], - "waiting_exits": [], "parent_refs": [] } }, @@ -168,7 +167,6 @@ } ], "results": [], - "waiting_exits": [], "parent_refs": [] } }, @@ -241,7 +239,6 @@ ] } ], - "waiting_exits": [], "parent_refs": [] } }, @@ -336,7 +333,6 @@ "dependencies": [], "issues": [], "results": [], - "waiting_exits": [], "parent_refs": [] } },