Releases: cadence-workflow/cadence-java-client
Releases · cadence-workflow/cadence-java-client
Release v4.0.0
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.
- you can no longer access fields directly but instead have to use
getterandsetterexplicitly. IWorkflowServicewill no longer throwTExceptionbut insteadCadenceError; all other exceptions thrown are kept the same extended fromCadenceErrorIWorkflowServiceusescom.uber.cadence.serviceclient.AsyncMethodCallbackinstead oforg.apache.thrift.async.AsyncMethodCallbackin 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.
- We removed special
TBaseandTEnumadapter (first introduced to reduce payload size #263). - We removed the ability to convert
TExceptionbut instead you'll get a fallback typecom.uber.cadence.client.ApplicationFailureException
Construct your client
WorkflowServiceTChannelis now removed and replaced byWorkflowServiceGrpc- If you use Grpc before, instead of
new Thrift2ProtoAdapter(IGrpcServiceStubs.newInstance())you can now useWorkflowServiceGrpc()directly.
What's Changed
- fix (mapper): updateDomainRequest bug by @shijiesheng in #1005
- fix (test): some flaky unit test and make test run faster on CI by @shijiesheng in #1007
- change (log): remove payload from Thrift data converter's deprecation log and add additional log for TEnumType converter by @shijiesheng in #1011
- change (release): Publish to Central Publisher Portal instead by @shijiesheng in #1012
- change (CI): Added github action tests by @mandyschen in #1013
- change (CI): Always upload artifacts by @mandyschen in #1016
- fix: Add unimplemented DiagnoseWorkflowExecution methods by @c-warren in #1015
- change (CI): Remove references to buildkite by @mandyschen in #1014
- feat (acitivity): Add attempt number to structured activity logger by @evansandoval in #1020
- chore: remove unnecessary TaskListKind internal entity by @shijiesheng in #1023
- remove raw history support by @shijiesheng in #1025
- feat (thrift deprecation): Part 1: new entities by @shijiesheng in #1024
- feat (thrift deprecation)!: Part 2: replace thrift entities with internal ones by @shijiesheng in #1022
- fix (data converter): fail open on exception not found by @shijiesheng in #1027
- feat (ci): Lint PR titles with Conventional Commits standard by @c-warren in #1028
- feat (ci): Support gpg key signed commits by @c-warren in #1029
- fix(mapper): avoid null pointer exception in request mappers by @shijiesheng in #1030
New Contributors
- @mandyschen made their first contribution in #1013
- @c-warren made their first contribution in #1015
- @evansandoval made their first contribution in #1020
Full Changelog: v3.12.7...v4.0.0
Release 3.12.4
3.12.4
- Fix incorrect span activation for local activities
Release 3.12.3
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
What's Changed
- downgrade java-jwt dependency to 3.10.2
Release 3.12.1
v3.12.0
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
- @mstifflin made their first contribution in #878
- @natemort made their first contribution in #881
- @votez made their first contribution in #858
Full Changelog: v3.11.0...v3.12.0
Release 3.11.0
- 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
- Bug Fix:Enhanced Workflow Handling for Existing Instances in New Domains
- Populate tasklistkind in poll request
Release 3.10.1
- Added case of workflow already started for migration
Release 3.10.0
- Added migrationIWorkflowService
- Added migrationInterceptor
- Moved out TracingInterceptor from WorkflowTest to a separate package