Skip to content

Releases: cadence-workflow/cadence-java-client

Release v4.0.0

14 Oct 21:10
474f5d1

Choose a tag to compare

Highlights

Thrift Deprecation

Thrift support is now fully removed in Java client. (See why #985 ).

Migration Guide from V3

User facing APIs on workflow operations are mostly unchanged. But there are some BREAKING changes as list below.

Thrift to new Entities in API calls

For users to migrate easily, we generate a new set of entities with the same import path and similar interfaces.

  1. you can no longer access fields directly but instead have to use getter and setter explicitly.
  2. IWorkflowService will no longer throw TException but instead CadenceError; all other exceptions thrown are kept the same extended from CadenceError
  3. IWorkflowService uses com.uber.cadence.serviceclient.AsyncMethodCallback instead of org.apache.thrift.async.AsyncMethodCallback in callback methods.

Data Converter

If your workflow's input or output contains Thrift entities that extended from TBase, TEnum, TException. This is a BREAKING change. You'll need to add back the thrift adapters in your custom dataconverters. We no longer support them by default.

  1. We removed special TBase and TEnum adapter (first introduced to reduce payload size #263).
  2. We removed the ability to convert TException but instead you'll get a fallback type com.uber.cadence.client.ApplicationFailureException

Construct your client

  1. WorkflowServiceTChannel is now removed and replaced by WorkflowServiceGrpc
  2. If you use Grpc before, instead of new Thrift2ProtoAdapter(IGrpcServiceStubs.newInstance()) you can now use WorkflowServiceGrpc() directly.

What's Changed

New Contributors

Full Changelog: v3.12.7...v4.0.0

Release 3.12.4

12 Jun 21:49
5fb72da

Choose a tag to compare

3.12.4

  • Fix incorrect span activation for local activities

Release 3.12.3

04 Jun 00:55
5caf971

Choose a tag to compare

3.12.3

  • Remove unused direct dependency of com.google.http-client
  • Fix context propagation bug that would link two parents in some cases

Release 3.12.2

22 May 19:09
efd64b7

Choose a tag to compare

What's Changed

  • downgrade java-jwt dependency to 3.10.2

Release 3.12.1

17 May 20:45
b0738bb

Choose a tag to compare

What's Changed

  • Refactor ActivityTaskExecutor to use ActivityTask interface (#897)
  • Fixed memory leak caused by incorrect context deactivation (#896)
  • Added unsetCurrentContext to ContextPropagator interface (#898)

v3.12.0

03 May 22:45
9808e30

Choose a tag to compare

What's Changed

  • Added support for new Async APIs for starting large numbers of workflows.
  • Added support for two-legged OAuth flow
  • Added support for standard JWT exp and iat claims
  • Updated WorkerOptions to default to the Tracer used to initialize WorkflowClient.
  • Fixed ClassCastException when using Promise#allOf(Promise<?>...)
  • Fixed NullPointerException in ContextPropagation when Header is present but fields is null

New Contributors

Full Changelog: v3.11.0...v3.12.0

Release 3.11.0

15 Apr 20:23
754a088

Choose a tag to compare

  • added opentracing support in workflow lifecycles
  • Bump io.grpc related dependency versions
  • Added signalWorkflow and tests for both SignalWorkflowExecution and SignalWithStart
  • Updating Docker cassandra version to 4.1.3
  • Add CODEOWNERS file

Release 3.10.1-fix

01 Feb 18:58
b1739e2

Choose a tag to compare

  • Bug Fix:Enhanced Workflow Handling for Existing Instances in New Domains
  • Populate tasklistkind in poll request

Release 3.10.1

29 Sep 08:47

Choose a tag to compare

  • Added case of workflow already started for migration

Release 3.10.0

25 Aug 23:26
fe2bdb5

Choose a tag to compare

  • Added migrationIWorkflowService
  • Added migrationInterceptor
  • Moved out TracingInterceptor from WorkflowTest to a separate package