v1.1.0 Release
💥 Breaking changes in SDK API:
- Client:
- Removed the startStateId for StartWorkflow API -- this should simplify the experience
- WorkflowOptions use a more friendly way to define initial search attributes
- UnregisteredClient
- Add UnregisteredWorkflowOptions for UnregisteredClient since it cannot use WorkflowOptions anymore. UnregisteredWorkflowOptions is the same as the previous WorkflowOptions
New features (need higher server version)
- Skip timer API for testing/operation : requires server version 1.2 +
- Decider trigger type: any command combination: requires server version 1.2 +
- Improve error handling to add more friendly API to check client side error
- Error handling returns subError type like WorkflowAlreadyStarted/WorkflowNotExists: requires server version 1.2.1+
- Add Attempt and FirstAttemptTimestampSeconds to context: requires server version 1.2.2+
- NOTE: This Attempt and FirstAttemptTimestampSeconds are important to implement complex WorkflowState behavior. E.g. It needs to do some backoff retry in a Start/Decide API for several times, but then give up and move on without failing the workflow
Requirements:
Best if runs with iWF server 1.2 +
It also runs with lower versions of iWF server, but new features will be rejected or returns empty
What's Changed
- Fix ResetType for ResetToStateExecutionId by @longquanzheng in #24
- Remove starting stateId from start workflow API by @longquanzheng in #25
- Separate WorkflowOptions from UnregisteredWorkflowOptions by @longquanzheng in #26
- Add skip timer API by @longquanzheng in #27
- Add anyCommandCombination with tests covering skipTimer API by @longquanzheng in #28
- Add error handling to differentiate different error types by @longquanzheng in #29
- Add attempt and firstAttemptTimestamp to context by @longquanzheng in #30
Full Changelog: v1.0.1...v1.1.0