Releases: cadence-workflow/cadence-go-client
v1.2.10
What's Changed
- Release v1.2.9 by @ketsiambaku in #1317
- Added a unit test for workflow replayer utils by @agautam478 in #1316
- Enable codecov and generate metadata file as artifact by @taylanisikdemir in #1320
- Update idl and add wrapper implementaton for async start/signalwithstart APIs by @taylanisikdemir in #1321
- Add documentation for propagators and how they are executed by @alshopov in #1312
- Fix coverage metadata commit info by @taylanisikdemir in #1323
- Enforce 85% new line coverage by @taylanisikdemir in #1325
- Pin mockery and regenerate everything by @Groxx in #1328
- Server-like
make build
and ensuring builds are clean in CI by @Groxx in #1329 - Update client wrappers with new async APIs by @taylanisikdemir in #1327
- Internal workflow client test improvements by @Groxx in #1331
- Migrate CI from AWS queues to Google Kubernetes Engine queues by @mstifflin in #1333
- Added an option to exclude the list of workflows by Type by @agautam478 in #1335
- Bump x/tools for tools, to support go 1.22 by @Groxx in #1336
- Update compatibility adapter to support new enum value by @Shaddoll in #1337
- Fixing unit_test failure detection, and tests for data converters by @Groxx in #1341
- Add methods on Worker to get registered workflows and activities by @ketsiambaku in #1342
- Implement the registered workflows and activities getter APIs for testsuite by @ketsiambaku in #1343
New Contributors
Full Changelog: v1.2.9...v1.2.10-rc.3
v1.2.9
What's Changed
- Tests for Continue as New and one additional scenario by @agautam478 in #1313
- Replace JWT library for signing tokens by @mantas-sidlauskas in #1308
- Release v1.2.8 by @jakobht in #1314
- Revert breaking changes in v1.2.8 by @ketsiambaku in #1315
Full Changelog: v1.2.8...v1.2.9
v1.2.8
What's Changed
- Write coverage output to a static path by @taylanisikdemir in #1303
- Release v1.2.7 by @timl3136 in #1302
- Remove time.Sleep usage from lru tests by @3vilhamster in #1305
- ISSUE 1125: Addressing difference in workflow interceptors when using the testkit by @edmondop in #1257
- Making Workflow and Activity registration optional when they are mocked by @edmondop in #1256
- Added CloseTime filter to shadower by @agautam478 in #1309
- [cadence/debug] Expose method to get default worker options by @ketsiambaku in #1311
- Support two-legged OAuth flow by @mantas-sidlauskas in #1304
New Contributors
- @edmondop made their first contribution in #1257
- @ketsiambaku made their first contribution in #1311
Full Changelog: v1.2.7...v1.2.8-rc.1
v1.2.7
v1.2.6
v1.1.0 Release
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
- @taylanisikdemir made their first contribution in #1279
Full Changelog: v1.0.2...v1.1.0
v1.0.2 release
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
Added
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
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
Changed
- Client will not retry on
LimitExceededError
#1170