- Add workflow id and activity id to workflow and activity logs
- Check activity id, type and input to detect non-deterministic workflow when applying history
- Add a new
#signal_workflow_execution
method to accept domain rather than workflow.
- Expose parent workflow info (ID and RunID) in Cadence::Metadata::Workflow object
- Add workflow decision task deserialization logic that is compatible with official go implementation
- Add activity task deserialization logic that is compatible with official go implementation
- Add rbi definition for Cadence::Crew
- Add a Crew implementation to fork and manage worker child processes
- Add methods for fetching workflow executions (
#list_open_workflow_executions
and#list_closed_workflow_executions
)
- Restore previous workflow context after finished processing
- Update Testing::LocalWorkflowContext execute_activity method to fail the future when the activity fails.
- Add :id and :domain to workflow context's metadata
- Fix regression with non-deterministic timer cancellation
- Fix issue with incorrect timer cancellation under certain circumstances
- Implement testing mode support for async timers
- Update RBI file to remove Thrift methods
- Add Metadata::Base#to_h for uniform metadata
- Implement hooks for Error handling
- Add Coveralls
- Update RBI file to cover all classes and methods
- Implement strategies for resetting workflows
- Fix a bug which prevented retry_policy from being passed as explicit options
- Make retry_policy options mergeable with the values in an Activity or a Workflow
- Expose Cadence::Activity::AsyncToken in RBI
- Make Cadence::Client initializable allowing to connect to multiple clusters from the same app
- Add thread pool support to workflow pollers
- Add basic non-determinism check for workflow replay
- Make worker thread count & poller TTL configurable
- Add support for fetching paginated workflow history
- Implement Cadence.terminate_workflow
- Add metrics to report latency between poller loops