Skip to content

Releases: uber-go/cadence-client

v1.2.10

22 Mar 19:12
Compare
Choose a tag to compare
v1.2.10 Pre-release
Pre-release

What's Changed

Introducing Async APIs

We are building new set of external APIs to support burst scenarios. Async APIs will queue the requests in a supported queue and cadence-workers service will pick them up and make corresponding sync API calls to cadence-frontend by respecting the rate limits. The following async APIs are in available in preview mode:

  • SignalWithStartWorkflowExecutionAsync
  • StartWorkflowExecutionAsync

You can locate corresponding PRs in uber/cadence repo to check the details on how to configure the queues on server side. After benchmarking we are going to announce GA for these new APIs with further documentation on how to configure/use.

Added

New Contributors

Full Changelog: v1.2.9...v1.2.10-rc.3

v1.2.9

01 Mar 16:16
Compare
Choose a tag to compare

What's Changed

Full Changelog: v1.2.8...v1.2.9

v1.2.8

27 Feb 14:03
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v1.2.7...v1.2.8-rc.1

v1.2.7

11 Dec 10:28
Compare
Choose a tag to compare

What's Changed

Changed

  • Upgraded cassandra image to 4.1.3 in docker compose files #1301

Fixed

  • Fixed history size exposure logging #1300

Full Changelog: v1.2.6...v1.2.7

v1.2.6

24 Nov 10:30
Compare
Choose a tag to compare

What's Changed

Added

  • Added a new query type __query_types #1295
  • Added calculate workflow history size and count and expose that to client #1270
  • Added honor non-determinism fail workflow policy #1287

Full Changelog: v1.1.0...v1.2.6

v1.1.0 Release

09 Nov 19:31
ae76f5f
Compare
Choose a tag to compare

What's Changed

Added

  • Added new poller thread pool usage metrics #1275 #1291
  • Added metrics tag workflowruntimelength in workflow context #1277
  • Added GetWorkflowTaskList and GetActivityTaskList APIs #1292

Changed

  • Updated idl version
  • Improved retrieval of binaryChecksum #1279

Fixed

  • Fixed error log #1284
  • Fixed in TestEnv workflow interceptor is not propagated correctly for child workflows #1289

New Contributors

Full Changelog: v1.0.2...v1.1.0

v1.0.2 release

25 Sep 13:10
bdc3c39
Compare
Choose a tag to compare

Added

  • Add a structured error for non-determinism failures

Changed

  • Do not log when automatic heart beating fails due to cancellations

Full Changelog: v1.0.1...v1.0.2

v1.0.1 release

14 Aug 10:38
Compare
Choose a tag to compare

Added

  • Emit cadence worker's hardware utilization inside worker once per host by @timl3136 in #1260

Changed

  • Updated supported Go version to 1.19
  • Log when the automatic heartbeating fails
  • Updated golang.org/x/net and github.com/prometheus/client_golang

Full Changelog: v1.0.0...v1.0.1

v1.0.0

12 Jul 22:28
a072981
Compare
Choose a tag to compare

We are v1.0!

What does this mean?!

At the moment, not much. This is largely to mirror the v1.0 release in the server.

Importantly, v1.0 does not imply any change to backwards compatibility - the current policy is still "best effort with some obvious exceptions" (like new methods on the service client interface).
Going by previous version patterns, this would have been labeled v0.20.0 as it is a relatively incremental change off of v0.19.1.

Coming soon(ish): v2

We are planning on releasing a v2 of this client! There will likely be more v1 changes first though.

v0 / v1 has been boxed in a bit by backwards compatibility requirements and a few leaky APIs (aliases, exposed thrift objects, etc). This has been making some desired changes difficult or nigh-impossible.

Because of this, v2 is intended largely as a cleanup so we can make larger internal changes without interrupting our users. We will be intentionally avoiding major semantic changes, and you will be able to and encouraged to use v1 and v2 side by side to gradually migrate. We'll be relying on this v1+v2 ability internally quite a bit, to migrate our monorepo :)
Workflow histories should remain backwards compatible, but code will require some simple and generally-obviously-correct changes, and previously-opt-in features may become opt-out or simply disappear in favor of the new behavior.

When this occurs, it will essentially signal the end of feature development on v1. We will likely make exceptions for IDL changes (largely due to the shared IDL repository, which protobuf effectively requires us to use) and easily-backport-able bugfixes, but this will end at some point.
Due to this, you will definitely be encouraged to migrate ASAP, so you can eliminate the v1 dependency.

We'll have migration details written up in detail when it's ready.

Changes since v0.19.1

  • add refresh tasks API to client by @mkolodezny in #1162
  • Exclude idls subfolder from licencegen tool by @vytautas-karpavicius in #1163
  • Upgrade x/sys and quantile to work with Go 1.18 by @Groxx in #1164
  • Stop retrying get-workflow-history with an impossibly-short timeout by @Groxx in #1171
  • Rewrite an irrational test which changes behavior based on compiler inlining by @Groxx in #1172
  • Deduplicate retry tests a bit by @Groxx in #1173
  • Prevent local-activity panics from taking down the worker process by @Groxx in #1169
  • Moving retryable-err checks to errors.As, moving some to not-retryable by @Groxx in #1167
  • Apparently copyright isn't checked by CI by @Groxx in #1175
  • Another missed license header by @Groxx in #1176
  • Add JitterStart support to client by @ZackLK in #1178
  • Simplify worker options configuration value propagation by @shijiesheng in #1179
  • Sharing one of my favorite "scopes" in intellij, and making it easier to add more by @Groxx in #1182
  • Add poller autoscaler by @shijiesheng in #1184
  • add poller autoscaling in activity and decision workers by @shijiesheng in #1186
  • Fix bug with workflow shadower: ALL is documented as an allowed Status; test and fix. by @ZackLK in #1187
  • upgrade thrift to v0.16.0 and tchannel-go to v1.32.1 by @shijiesheng in #1189
  • [poller autoscaler] fix logic to identify empty tasks by @shijiesheng in #1192
  • Maintain a stable order of children context, resolves a non-determinism around cancels by @Groxx in #1183
  • upgrade fossa cli to latest and remove unused fossa.yml by @shijiesheng in #1196
  • Retry service-busy errors after a delay by @Groxx in #1174
  • changing dynamic poller scaling strategy. by @mindaugasbarcauskas in #1197
  • Fix flaky test by @mindaugasbarcauskas in #1201
  • updating go client dependencies. by @mindaugasbarcauskas in #1200
  • version metrics by @allenchen2244 in #1199
  • Export GetRegisteredWorkflowTypes so I can use in shadowtest. by @ZackLK in #1202
  • Add GetUnhandledSignalNames by @longquanzheng in #1203
  • Adding go version check when building locally. by @mindaugasbarcauskas in #1209
  • update CI go version. by @mindaugasbarcauskas in #1210
  • ran "make fmt" by @mindaugasbarcauskas in #1206
  • Updating IDL version for go client. by @mindaugasbarcauskas in #1211
  • Adding ability to provide cancellation reason to cancelWorkflow API by @mindaugasbarcauskas in #1213
  • Expose WithCancelReason and related types publicly, as originally intended by @Groxx in #1214
  • Add missing activity logger fields for local activities by @Groxx in #1216
  • Modernize makefile like server, split tools into their own module by @Groxx in #1215
  • adding serviceBusy tag for transient-poller-failure counter metric. by @mindaugasbarcauskas in #1212
  • surface more information in ContinueAsNewError by @shijiesheng in #1218
  • Corrected error messages in getValidatedActivityOptions by @jakobht in #1224
  • Fix TestActivityWorkerStop: it times out with go 1.20 by @dkrotx in #1223
  • Fixed the spelling of replay_test file. by @agautam478 in #1226
  • Add more detail to how workflow.Now behaves by @Groxx in #1228
  • Part1: Record the data type change scenario for shadower/replayer test suite by @agautam478 in #1227
  • Document ErrResultPending's behavioral gap explicitly by @Groxx in #1229
  • Added the Activity Registration required failure scenario to replayer test suite by @agautam478 in #1231
  • Shift replayer to prefer io.Reader rather than filenames by @Groxx in #1234
  • Expose activity registry on workflow replayer by @Groxx in #1232
  • Merged the timeout logic for the tests in internal_workers_test.go by @jakobht in #1225
  • [error] surface more fields in ContinueAsNew error by @shijiesheng in #1235
  • Add and emulate the issues found in the workflows involving coroutines into the replayersuite. by @agautam478 in #1237
  • Add the change in branch number case(test) to replayersuite by @agautam478 in #1236
  • Locally-dispatched activity test flakiness hopefully resolved by @Groxx in #1240
  • Switched to revive, goimports, re-formatted everything by @Groxx in #1233
  • Add the case where changing the activities (addition/subtraction/modification in current behavior) in the switch case has no effect on replayer. by @agautam478 in #1238
  • Replaced Activity.RegisterWithOptions with replayers own acitivty register by @agautam478 in #1242
  • [activity/logging] produce a log when activities time out by @sankari165 in #1243
  • Better logging when getting some nondeterministic behaviours by @jakobht in #1245
  • make fmt fix by @Groxx in #1246
  • Test-suite bugfix: local activity errors were not encoded correctly by @Groxx in #1247
  • Extracting the replayer specific utilities into a separate file for readability. by @agautam478 in #1244
  • Adding WorkflowType to "Workflow panic" log-message by @dkrotx in #1259
  • Adding in additional header to determine a more stable isolation-group by @davidporter-id-au in #1252
  • Bump version strings for 1.0 release by @Groxx in #1261

Full Changelog: v0.19.1...v1.0

v0.19.1 release

03 Jun 05:50
Compare
Choose a tag to compare

Changed

  • Client will not retry on LimitExceededError #1170