temporalio 0.3.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (153) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +1 -1
  3. data/Cargo.lock +1019 -669
  4. data/Cargo.toml +5 -5
  5. data/Gemfile +4 -0
  6. data/README.md +281 -44
  7. data/Rakefile +1 -1
  8. data/ext/Cargo.toml +4 -3
  9. data/lib/temporalio/activity/cancellation_details.rb +58 -0
  10. data/lib/temporalio/activity/context.rb +23 -1
  11. data/lib/temporalio/activity/definition.rb +63 -8
  12. data/lib/temporalio/activity/info.rb +28 -4
  13. data/lib/temporalio/activity.rb +2 -0
  14. data/lib/temporalio/api/activity/v1/message.rb +1 -1
  15. data/lib/temporalio/api/batch/v1/message.rb +9 -2
  16. data/lib/temporalio/api/cloud/account/v1/message.rb +1 -1
  17. data/lib/temporalio/api/cloud/cloudservice/v1/request_response.rb +11 -2
  18. data/lib/temporalio/api/cloud/cloudservice/v1/service.rb +2 -2
  19. data/lib/temporalio/api/cloud/identity/v1/message.rb +7 -2
  20. data/lib/temporalio/api/cloud/namespace/v1/message.rb +6 -2
  21. data/lib/temporalio/api/cloud/nexus/v1/message.rb +3 -2
  22. data/lib/temporalio/api/cloud/operation/v1/message.rb +1 -1
  23. data/lib/temporalio/api/cloud/region/v1/message.rb +1 -1
  24. data/lib/temporalio/api/cloud/resource/v1/message.rb +1 -1
  25. data/lib/temporalio/api/cloud/sink/v1/message.rb +1 -1
  26. data/lib/temporalio/api/cloud/usage/v1/message.rb +1 -1
  27. data/lib/temporalio/api/command/v1/message.rb +2 -2
  28. data/lib/temporalio/api/common/v1/grpc_status.rb +1 -1
  29. data/lib/temporalio/api/common/v1/message.rb +4 -2
  30. data/lib/temporalio/api/deployment/v1/message.rb +39 -0
  31. data/lib/temporalio/api/enums/v1/batch_operation.rb +2 -2
  32. data/lib/temporalio/api/enums/v1/command_type.rb +1 -1
  33. data/lib/temporalio/api/enums/v1/common.rb +5 -2
  34. data/lib/temporalio/api/enums/v1/deployment.rb +24 -0
  35. data/lib/temporalio/api/enums/v1/event_type.rb +2 -2
  36. data/lib/temporalio/api/enums/v1/failed_cause.rb +2 -2
  37. data/lib/temporalio/api/enums/v1/namespace.rb +1 -1
  38. data/lib/temporalio/api/enums/v1/nexus.rb +21 -0
  39. data/lib/temporalio/api/enums/v1/query.rb +1 -1
  40. data/lib/temporalio/api/enums/v1/reset.rb +2 -2
  41. data/lib/temporalio/api/enums/v1/schedule.rb +1 -1
  42. data/lib/temporalio/api/enums/v1/task_queue.rb +1 -1
  43. data/lib/temporalio/api/enums/v1/update.rb +1 -1
  44. data/lib/temporalio/api/enums/v1/workflow.rb +3 -2
  45. data/lib/temporalio/api/errordetails/v1/message.rb +4 -2
  46. data/lib/temporalio/api/export/v1/message.rb +1 -1
  47. data/lib/temporalio/api/failure/v1/message.rb +5 -2
  48. data/lib/temporalio/api/filter/v1/message.rb +1 -1
  49. data/lib/temporalio/api/history/v1/message.rb +6 -2
  50. data/lib/temporalio/api/namespace/v1/message.rb +1 -1
  51. data/lib/temporalio/api/nexus/v1/message.rb +3 -2
  52. data/lib/temporalio/api/operatorservice/v1/request_response.rb +1 -1
  53. data/lib/temporalio/api/operatorservice/v1/service.rb +1 -1
  54. data/lib/temporalio/api/payload_visitor.rb +162 -7
  55. data/lib/temporalio/api/protocol/v1/message.rb +1 -1
  56. data/lib/temporalio/api/query/v1/message.rb +3 -2
  57. data/lib/temporalio/api/replication/v1/message.rb +1 -1
  58. data/lib/temporalio/api/rules/v1/message.rb +27 -0
  59. data/lib/temporalio/api/schedule/v1/message.rb +2 -2
  60. data/lib/temporalio/api/sdk/v1/enhanced_stack_trace.rb +1 -1
  61. data/lib/temporalio/api/sdk/v1/task_complete_metadata.rb +1 -1
  62. data/lib/temporalio/api/sdk/v1/user_metadata.rb +1 -1
  63. data/lib/temporalio/api/sdk/v1/workflow_metadata.rb +1 -1
  64. data/lib/temporalio/api/taskqueue/v1/message.rb +5 -2
  65. data/lib/temporalio/api/testservice/v1/request_response.rb +1 -1
  66. data/lib/temporalio/api/testservice/v1/service.rb +1 -1
  67. data/lib/temporalio/api/update/v1/message.rb +1 -1
  68. data/lib/temporalio/api/version/v1/message.rb +1 -1
  69. data/lib/temporalio/api/worker/v1/message.rb +30 -0
  70. data/lib/temporalio/api/workflow/v1/message.rb +22 -2
  71. data/lib/temporalio/api/workflowservice/v1/request_response.rb +58 -12
  72. data/lib/temporalio/api/workflowservice/v1/service.rb +2 -2
  73. data/lib/temporalio/api.rb +1 -0
  74. data/lib/temporalio/client/async_activity_handle.rb +12 -4
  75. data/lib/temporalio/client/connection/cloud_service.rb +60 -0
  76. data/lib/temporalio/client/connection/workflow_service.rb +343 -28
  77. data/lib/temporalio/client/interceptor.rb +64 -7
  78. data/lib/temporalio/client/schedule.rb +35 -3
  79. data/lib/temporalio/client/with_start_workflow_operation.rb +123 -0
  80. data/lib/temporalio/client/workflow_execution.rb +19 -0
  81. data/lib/temporalio/client/workflow_handle.rb +47 -7
  82. data/lib/temporalio/client/workflow_update_handle.rb +9 -3
  83. data/lib/temporalio/client.rb +231 -4
  84. data/lib/temporalio/common_enums.rb +14 -0
  85. data/lib/temporalio/contrib/open_telemetry.rb +474 -0
  86. data/lib/temporalio/converters/data_converter.rb +18 -8
  87. data/lib/temporalio/converters/failure_converter.rb +6 -3
  88. data/lib/temporalio/converters/payload_converter/binary_null.rb +2 -2
  89. data/lib/temporalio/converters/payload_converter/binary_plain.rb +2 -2
  90. data/lib/temporalio/converters/payload_converter/binary_protobuf.rb +2 -2
  91. data/lib/temporalio/converters/payload_converter/composite.rb +6 -4
  92. data/lib/temporalio/converters/payload_converter/encoding.rb +4 -2
  93. data/lib/temporalio/converters/payload_converter/json_plain.rb +2 -2
  94. data/lib/temporalio/converters/payload_converter/json_protobuf.rb +2 -2
  95. data/lib/temporalio/converters/payload_converter.rb +16 -6
  96. data/lib/temporalio/error/failure.rb +19 -1
  97. data/lib/temporalio/error.rb +2 -1
  98. data/lib/temporalio/internal/bridge/api/activity_result/activity_result.rb +1 -1
  99. data/lib/temporalio/internal/bridge/api/activity_task/activity_task.rb +3 -2
  100. data/lib/temporalio/internal/bridge/api/child_workflow/child_workflow.rb +1 -1
  101. data/lib/temporalio/internal/bridge/api/common/common.rb +3 -2
  102. data/lib/temporalio/internal/bridge/api/core_interface.rb +1 -1
  103. data/lib/temporalio/internal/bridge/api/external_data/external_data.rb +1 -1
  104. data/lib/temporalio/internal/bridge/api/nexus/nexus.rb +3 -2
  105. data/lib/temporalio/internal/bridge/api/workflow_activation/workflow_activation.rb +2 -2
  106. data/lib/temporalio/internal/bridge/api/workflow_commands/workflow_commands.rb +3 -2
  107. data/lib/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rb +3 -2
  108. data/lib/temporalio/internal/bridge/runtime.rb +3 -0
  109. data/lib/temporalio/internal/bridge/testing.rb +3 -0
  110. data/lib/temporalio/internal/bridge/worker.rb +28 -4
  111. data/lib/temporalio/internal/bridge.rb +1 -1
  112. data/lib/temporalio/internal/client/implementation.rb +281 -51
  113. data/lib/temporalio/internal/proto_utils.rb +38 -6
  114. data/lib/temporalio/internal/worker/activity_worker.rb +112 -27
  115. data/lib/temporalio/internal/worker/multi_runner.rb +2 -2
  116. data/lib/temporalio/internal/worker/workflow_instance/child_workflow_handle.rb +8 -6
  117. data/lib/temporalio/internal/worker/workflow_instance/context.rb +100 -5
  118. data/lib/temporalio/internal/worker/workflow_instance/details.rb +7 -2
  119. data/lib/temporalio/internal/worker/workflow_instance/external_workflow_handle.rb +2 -2
  120. data/lib/temporalio/internal/worker/workflow_instance/illegal_call_tracer.rb +64 -18
  121. data/lib/temporalio/internal/worker/workflow_instance/outbound_implementation.rb +39 -40
  122. data/lib/temporalio/internal/worker/workflow_instance/scheduler.rb +22 -2
  123. data/lib/temporalio/internal/worker/workflow_instance.rb +134 -55
  124. data/lib/temporalio/internal/worker/workflow_worker.rb +74 -21
  125. data/lib/temporalio/priority.rb +59 -0
  126. data/lib/temporalio/runtime/metric_buffer.rb +94 -0
  127. data/lib/temporalio/runtime.rb +48 -10
  128. data/lib/temporalio/search_attributes.rb +13 -0
  129. data/lib/temporalio/testing/activity_environment.rb +59 -16
  130. data/lib/temporalio/testing/workflow_environment.rb +29 -6
  131. data/lib/temporalio/version.rb +1 -1
  132. data/lib/temporalio/versioning_override.rb +56 -0
  133. data/lib/temporalio/worker/deployment_options.rb +45 -0
  134. data/lib/temporalio/worker/illegal_workflow_call_validator.rb +64 -0
  135. data/lib/temporalio/worker/interceptor.rb +16 -1
  136. data/lib/temporalio/worker/poller_behavior.rb +61 -0
  137. data/lib/temporalio/worker/thread_pool.rb +6 -6
  138. data/lib/temporalio/worker/tuner.rb +38 -0
  139. data/lib/temporalio/worker/workflow_executor/thread_pool.rb +14 -8
  140. data/lib/temporalio/worker/workflow_executor.rb +1 -1
  141. data/lib/temporalio/worker/workflow_replayer.rb +349 -0
  142. data/lib/temporalio/worker.rb +117 -75
  143. data/lib/temporalio/worker_deployment_version.rb +67 -0
  144. data/lib/temporalio/workflow/child_workflow_handle.rb +10 -2
  145. data/lib/temporalio/workflow/definition.rb +217 -35
  146. data/lib/temporalio/workflow/external_workflow_handle.rb +3 -1
  147. data/lib/temporalio/workflow/future.rb +2 -2
  148. data/lib/temporalio/workflow/info.rb +26 -1
  149. data/lib/temporalio/workflow.rb +119 -15
  150. data/lib/temporalio/workflow_history.rb +26 -1
  151. data/lib/temporalio.rb +1 -0
  152. data/temporalio.gemspec +3 -1
  153. metadata +36 -6
@@ -241,6 +241,21 @@ module Temporalio
241
241
  )
242
242
  end
243
243
 
244
+ # Calls CloudService.DeleteNamespaceRegion API call.
245
+ #
246
+ # @param request [Temporalio::Api::Cloud::CloudService::V1::DeleteNamespaceRegionRequest] API request.
247
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
248
+ # @return [Temporalio::Api::Cloud::CloudService::V1::DeleteNamespaceRegionResponse] API response.
249
+ def delete_namespace_region(request, rpc_options: nil)
250
+ invoke_rpc(
251
+ rpc: 'delete_namespace_region',
252
+ request_class: Temporalio::Api::Cloud::CloudService::V1::DeleteNamespaceRegionRequest,
253
+ response_class: Temporalio::Api::Cloud::CloudService::V1::DeleteNamespaceRegionResponse,
254
+ request:,
255
+ rpc_options:
256
+ )
257
+ end
258
+
244
259
  # Calls CloudService.GetRegions API call.
245
260
  #
246
261
  # @param request [Temporalio::Api::Cloud::CloudService::V1::GetRegionsRequest] API request.
@@ -511,6 +526,51 @@ module Temporalio
511
526
  )
512
527
  end
513
528
 
529
+ # Calls CloudService.AddUserGroupMember API call.
530
+ #
531
+ # @param request [Temporalio::Api::Cloud::CloudService::V1::AddUserGroupMemberRequest] API request.
532
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
533
+ # @return [Temporalio::Api::Cloud::CloudService::V1::AddUserGroupMemberResponse] API response.
534
+ def add_user_group_member(request, rpc_options: nil)
535
+ invoke_rpc(
536
+ rpc: 'add_user_group_member',
537
+ request_class: Temporalio::Api::Cloud::CloudService::V1::AddUserGroupMemberRequest,
538
+ response_class: Temporalio::Api::Cloud::CloudService::V1::AddUserGroupMemberResponse,
539
+ request:,
540
+ rpc_options:
541
+ )
542
+ end
543
+
544
+ # Calls CloudService.RemoveUserGroupMember API call.
545
+ #
546
+ # @param request [Temporalio::Api::Cloud::CloudService::V1::RemoveUserGroupMemberRequest] API request.
547
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
548
+ # @return [Temporalio::Api::Cloud::CloudService::V1::RemoveUserGroupMemberResponse] API response.
549
+ def remove_user_group_member(request, rpc_options: nil)
550
+ invoke_rpc(
551
+ rpc: 'remove_user_group_member',
552
+ request_class: Temporalio::Api::Cloud::CloudService::V1::RemoveUserGroupMemberRequest,
553
+ response_class: Temporalio::Api::Cloud::CloudService::V1::RemoveUserGroupMemberResponse,
554
+ request:,
555
+ rpc_options:
556
+ )
557
+ end
558
+
559
+ # Calls CloudService.GetUserGroupMembers API call.
560
+ #
561
+ # @param request [Temporalio::Api::Cloud::CloudService::V1::GetUserGroupMembersRequest] API request.
562
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
563
+ # @return [Temporalio::Api::Cloud::CloudService::V1::GetUserGroupMembersResponse] API response.
564
+ def get_user_group_members(request, rpc_options: nil)
565
+ invoke_rpc(
566
+ rpc: 'get_user_group_members',
567
+ request_class: Temporalio::Api::Cloud::CloudService::V1::GetUserGroupMembersRequest,
568
+ response_class: Temporalio::Api::Cloud::CloudService::V1::GetUserGroupMembersResponse,
569
+ request:,
570
+ rpc_options:
571
+ )
572
+ end
573
+
514
574
  # Calls CloudService.CreateServiceAccount API call.
515
575
  #
516
576
  # @param request [Temporalio::Api::Cloud::CloudService::V1::CreateServiceAccountRequest] API request.
@@ -841,6 +841,201 @@ module Temporalio
841
841
  )
842
842
  end
843
843
 
844
+ # Calls WorkflowService.DescribeDeployment API call.
845
+ #
846
+ # @param request [Temporalio::Api::WorkflowService::V1::DescribeDeploymentRequest] API request.
847
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
848
+ # @return [Temporalio::Api::WorkflowService::V1::DescribeDeploymentResponse] API response.
849
+ def describe_deployment(request, rpc_options: nil)
850
+ invoke_rpc(
851
+ rpc: 'describe_deployment',
852
+ request_class: Temporalio::Api::WorkflowService::V1::DescribeDeploymentRequest,
853
+ response_class: Temporalio::Api::WorkflowService::V1::DescribeDeploymentResponse,
854
+ request:,
855
+ rpc_options:
856
+ )
857
+ end
858
+
859
+ # Calls WorkflowService.DescribeWorkerDeploymentVersion API call.
860
+ #
861
+ # @param request [Temporalio::Api::WorkflowService::V1::DescribeWorkerDeploymentVersionRequest] API request.
862
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
863
+ # @return [Temporalio::Api::WorkflowService::V1::DescribeWorkerDeploymentVersionResponse] API response.
864
+ def describe_worker_deployment_version(request, rpc_options: nil)
865
+ invoke_rpc(
866
+ rpc: 'describe_worker_deployment_version',
867
+ request_class: Temporalio::Api::WorkflowService::V1::DescribeWorkerDeploymentVersionRequest,
868
+ response_class: Temporalio::Api::WorkflowService::V1::DescribeWorkerDeploymentVersionResponse,
869
+ request:,
870
+ rpc_options:
871
+ )
872
+ end
873
+
874
+ # Calls WorkflowService.ListDeployments API call.
875
+ #
876
+ # @param request [Temporalio::Api::WorkflowService::V1::ListDeploymentsRequest] API request.
877
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
878
+ # @return [Temporalio::Api::WorkflowService::V1::ListDeploymentsResponse] API response.
879
+ def list_deployments(request, rpc_options: nil)
880
+ invoke_rpc(
881
+ rpc: 'list_deployments',
882
+ request_class: Temporalio::Api::WorkflowService::V1::ListDeploymentsRequest,
883
+ response_class: Temporalio::Api::WorkflowService::V1::ListDeploymentsResponse,
884
+ request:,
885
+ rpc_options:
886
+ )
887
+ end
888
+
889
+ # Calls WorkflowService.GetDeploymentReachability API call.
890
+ #
891
+ # @param request [Temporalio::Api::WorkflowService::V1::GetDeploymentReachabilityRequest] API request.
892
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
893
+ # @return [Temporalio::Api::WorkflowService::V1::GetDeploymentReachabilityResponse] API response.
894
+ def get_deployment_reachability(request, rpc_options: nil)
895
+ invoke_rpc(
896
+ rpc: 'get_deployment_reachability',
897
+ request_class: Temporalio::Api::WorkflowService::V1::GetDeploymentReachabilityRequest,
898
+ response_class: Temporalio::Api::WorkflowService::V1::GetDeploymentReachabilityResponse,
899
+ request:,
900
+ rpc_options:
901
+ )
902
+ end
903
+
904
+ # Calls WorkflowService.GetCurrentDeployment API call.
905
+ #
906
+ # @param request [Temporalio::Api::WorkflowService::V1::GetCurrentDeploymentRequest] API request.
907
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
908
+ # @return [Temporalio::Api::WorkflowService::V1::GetCurrentDeploymentResponse] API response.
909
+ def get_current_deployment(request, rpc_options: nil)
910
+ invoke_rpc(
911
+ rpc: 'get_current_deployment',
912
+ request_class: Temporalio::Api::WorkflowService::V1::GetCurrentDeploymentRequest,
913
+ response_class: Temporalio::Api::WorkflowService::V1::GetCurrentDeploymentResponse,
914
+ request:,
915
+ rpc_options:
916
+ )
917
+ end
918
+
919
+ # Calls WorkflowService.SetCurrentDeployment API call.
920
+ #
921
+ # @param request [Temporalio::Api::WorkflowService::V1::SetCurrentDeploymentRequest] API request.
922
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
923
+ # @return [Temporalio::Api::WorkflowService::V1::SetCurrentDeploymentResponse] API response.
924
+ def set_current_deployment(request, rpc_options: nil)
925
+ invoke_rpc(
926
+ rpc: 'set_current_deployment',
927
+ request_class: Temporalio::Api::WorkflowService::V1::SetCurrentDeploymentRequest,
928
+ response_class: Temporalio::Api::WorkflowService::V1::SetCurrentDeploymentResponse,
929
+ request:,
930
+ rpc_options:
931
+ )
932
+ end
933
+
934
+ # Calls WorkflowService.SetWorkerDeploymentCurrentVersion API call.
935
+ #
936
+ # @param request [Temporalio::Api::WorkflowService::V1::SetWorkerDeploymentCurrentVersionRequest] API request.
937
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
938
+ # @return [Temporalio::Api::WorkflowService::V1::SetWorkerDeploymentCurrentVersionResponse] API response.
939
+ def set_worker_deployment_current_version(request, rpc_options: nil)
940
+ invoke_rpc(
941
+ rpc: 'set_worker_deployment_current_version',
942
+ request_class: Temporalio::Api::WorkflowService::V1::SetWorkerDeploymentCurrentVersionRequest,
943
+ response_class: Temporalio::Api::WorkflowService::V1::SetWorkerDeploymentCurrentVersionResponse,
944
+ request:,
945
+ rpc_options:
946
+ )
947
+ end
948
+
949
+ # Calls WorkflowService.DescribeWorkerDeployment API call.
950
+ #
951
+ # @param request [Temporalio::Api::WorkflowService::V1::DescribeWorkerDeploymentRequest] API request.
952
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
953
+ # @return [Temporalio::Api::WorkflowService::V1::DescribeWorkerDeploymentResponse] API response.
954
+ def describe_worker_deployment(request, rpc_options: nil)
955
+ invoke_rpc(
956
+ rpc: 'describe_worker_deployment',
957
+ request_class: Temporalio::Api::WorkflowService::V1::DescribeWorkerDeploymentRequest,
958
+ response_class: Temporalio::Api::WorkflowService::V1::DescribeWorkerDeploymentResponse,
959
+ request:,
960
+ rpc_options:
961
+ )
962
+ end
963
+
964
+ # Calls WorkflowService.DeleteWorkerDeployment API call.
965
+ #
966
+ # @param request [Temporalio::Api::WorkflowService::V1::DeleteWorkerDeploymentRequest] API request.
967
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
968
+ # @return [Temporalio::Api::WorkflowService::V1::DeleteWorkerDeploymentResponse] API response.
969
+ def delete_worker_deployment(request, rpc_options: nil)
970
+ invoke_rpc(
971
+ rpc: 'delete_worker_deployment',
972
+ request_class: Temporalio::Api::WorkflowService::V1::DeleteWorkerDeploymentRequest,
973
+ response_class: Temporalio::Api::WorkflowService::V1::DeleteWorkerDeploymentResponse,
974
+ request:,
975
+ rpc_options:
976
+ )
977
+ end
978
+
979
+ # Calls WorkflowService.DeleteWorkerDeploymentVersion API call.
980
+ #
981
+ # @param request [Temporalio::Api::WorkflowService::V1::DeleteWorkerDeploymentVersionRequest] API request.
982
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
983
+ # @return [Temporalio::Api::WorkflowService::V1::DeleteWorkerDeploymentVersionResponse] API response.
984
+ def delete_worker_deployment_version(request, rpc_options: nil)
985
+ invoke_rpc(
986
+ rpc: 'delete_worker_deployment_version',
987
+ request_class: Temporalio::Api::WorkflowService::V1::DeleteWorkerDeploymentVersionRequest,
988
+ response_class: Temporalio::Api::WorkflowService::V1::DeleteWorkerDeploymentVersionResponse,
989
+ request:,
990
+ rpc_options:
991
+ )
992
+ end
993
+
994
+ # Calls WorkflowService.SetWorkerDeploymentRampingVersion API call.
995
+ #
996
+ # @param request [Temporalio::Api::WorkflowService::V1::SetWorkerDeploymentRampingVersionRequest] API request.
997
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
998
+ # @return [Temporalio::Api::WorkflowService::V1::SetWorkerDeploymentRampingVersionResponse] API response.
999
+ def set_worker_deployment_ramping_version(request, rpc_options: nil)
1000
+ invoke_rpc(
1001
+ rpc: 'set_worker_deployment_ramping_version',
1002
+ request_class: Temporalio::Api::WorkflowService::V1::SetWorkerDeploymentRampingVersionRequest,
1003
+ response_class: Temporalio::Api::WorkflowService::V1::SetWorkerDeploymentRampingVersionResponse,
1004
+ request:,
1005
+ rpc_options:
1006
+ )
1007
+ end
1008
+
1009
+ # Calls WorkflowService.ListWorkerDeployments API call.
1010
+ #
1011
+ # @param request [Temporalio::Api::WorkflowService::V1::ListWorkerDeploymentsRequest] API request.
1012
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
1013
+ # @return [Temporalio::Api::WorkflowService::V1::ListWorkerDeploymentsResponse] API response.
1014
+ def list_worker_deployments(request, rpc_options: nil)
1015
+ invoke_rpc(
1016
+ rpc: 'list_worker_deployments',
1017
+ request_class: Temporalio::Api::WorkflowService::V1::ListWorkerDeploymentsRequest,
1018
+ response_class: Temporalio::Api::WorkflowService::V1::ListWorkerDeploymentsResponse,
1019
+ request:,
1020
+ rpc_options:
1021
+ )
1022
+ end
1023
+
1024
+ # Calls WorkflowService.UpdateWorkerDeploymentVersionMetadata API call.
1025
+ #
1026
+ # @param request [Temporalio::Api::WorkflowService::V1::UpdateWorkerDeploymentVersionMetadataRequest] API request.
1027
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
1028
+ # @return [Temporalio::Api::WorkflowService::V1::UpdateWorkerDeploymentVersionMetadataResponse] API response.
1029
+ def update_worker_deployment_version_metadata(request, rpc_options: nil)
1030
+ invoke_rpc(
1031
+ rpc: 'update_worker_deployment_version_metadata',
1032
+ request_class: Temporalio::Api::WorkflowService::V1::UpdateWorkerDeploymentVersionMetadataRequest,
1033
+ response_class: Temporalio::Api::WorkflowService::V1::UpdateWorkerDeploymentVersionMetadataResponse,
1034
+ request:,
1035
+ rpc_options:
1036
+ )
1037
+ end
1038
+
844
1039
  # Calls WorkflowService.UpdateWorkflowExecution API call.
845
1040
  #
846
1041
  # @param request [Temporalio::Api::WorkflowService::V1::UpdateWorkflowExecutionRequest] API request.
@@ -976,61 +1171,181 @@ module Temporalio
976
1171
  )
977
1172
  end
978
1173
 
979
- # Calls WorkflowService.UpdateActivityOptionsById API call.
1174
+ # Calls WorkflowService.UpdateActivityOptions API call.
1175
+ #
1176
+ # @param request [Temporalio::Api::WorkflowService::V1::UpdateActivityOptionsRequest] API request.
1177
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
1178
+ # @return [Temporalio::Api::WorkflowService::V1::UpdateActivityOptionsResponse] API response.
1179
+ def update_activity_options(request, rpc_options: nil)
1180
+ invoke_rpc(
1181
+ rpc: 'update_activity_options',
1182
+ request_class: Temporalio::Api::WorkflowService::V1::UpdateActivityOptionsRequest,
1183
+ response_class: Temporalio::Api::WorkflowService::V1::UpdateActivityOptionsResponse,
1184
+ request:,
1185
+ rpc_options:
1186
+ )
1187
+ end
1188
+
1189
+ # Calls WorkflowService.UpdateWorkflowExecutionOptions API call.
1190
+ #
1191
+ # @param request [Temporalio::Api::WorkflowService::V1::UpdateWorkflowExecutionOptionsRequest] API request.
1192
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
1193
+ # @return [Temporalio::Api::WorkflowService::V1::UpdateWorkflowExecutionOptionsResponse] API response.
1194
+ def update_workflow_execution_options(request, rpc_options: nil)
1195
+ invoke_rpc(
1196
+ rpc: 'update_workflow_execution_options',
1197
+ request_class: Temporalio::Api::WorkflowService::V1::UpdateWorkflowExecutionOptionsRequest,
1198
+ response_class: Temporalio::Api::WorkflowService::V1::UpdateWorkflowExecutionOptionsResponse,
1199
+ request:,
1200
+ rpc_options:
1201
+ )
1202
+ end
1203
+
1204
+ # Calls WorkflowService.PauseActivity API call.
1205
+ #
1206
+ # @param request [Temporalio::Api::WorkflowService::V1::PauseActivityRequest] API request.
1207
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
1208
+ # @return [Temporalio::Api::WorkflowService::V1::PauseActivityResponse] API response.
1209
+ def pause_activity(request, rpc_options: nil)
1210
+ invoke_rpc(
1211
+ rpc: 'pause_activity',
1212
+ request_class: Temporalio::Api::WorkflowService::V1::PauseActivityRequest,
1213
+ response_class: Temporalio::Api::WorkflowService::V1::PauseActivityResponse,
1214
+ request:,
1215
+ rpc_options:
1216
+ )
1217
+ end
1218
+
1219
+ # Calls WorkflowService.UnpauseActivity API call.
1220
+ #
1221
+ # @param request [Temporalio::Api::WorkflowService::V1::UnpauseActivityRequest] API request.
1222
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
1223
+ # @return [Temporalio::Api::WorkflowService::V1::UnpauseActivityResponse] API response.
1224
+ def unpause_activity(request, rpc_options: nil)
1225
+ invoke_rpc(
1226
+ rpc: 'unpause_activity',
1227
+ request_class: Temporalio::Api::WorkflowService::V1::UnpauseActivityRequest,
1228
+ response_class: Temporalio::Api::WorkflowService::V1::UnpauseActivityResponse,
1229
+ request:,
1230
+ rpc_options:
1231
+ )
1232
+ end
1233
+
1234
+ # Calls WorkflowService.ResetActivity API call.
1235
+ #
1236
+ # @param request [Temporalio::Api::WorkflowService::V1::ResetActivityRequest] API request.
1237
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
1238
+ # @return [Temporalio::Api::WorkflowService::V1::ResetActivityResponse] API response.
1239
+ def reset_activity(request, rpc_options: nil)
1240
+ invoke_rpc(
1241
+ rpc: 'reset_activity',
1242
+ request_class: Temporalio::Api::WorkflowService::V1::ResetActivityRequest,
1243
+ response_class: Temporalio::Api::WorkflowService::V1::ResetActivityResponse,
1244
+ request:,
1245
+ rpc_options:
1246
+ )
1247
+ end
1248
+
1249
+ # Calls WorkflowService.CreateWorkflowRule API call.
1250
+ #
1251
+ # @param request [Temporalio::Api::WorkflowService::V1::CreateWorkflowRuleRequest] API request.
1252
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
1253
+ # @return [Temporalio::Api::WorkflowService::V1::CreateWorkflowRuleResponse] API response.
1254
+ def create_workflow_rule(request, rpc_options: nil)
1255
+ invoke_rpc(
1256
+ rpc: 'create_workflow_rule',
1257
+ request_class: Temporalio::Api::WorkflowService::V1::CreateWorkflowRuleRequest,
1258
+ response_class: Temporalio::Api::WorkflowService::V1::CreateWorkflowRuleResponse,
1259
+ request:,
1260
+ rpc_options:
1261
+ )
1262
+ end
1263
+
1264
+ # Calls WorkflowService.DescribeWorkflowRule API call.
1265
+ #
1266
+ # @param request [Temporalio::Api::WorkflowService::V1::DescribeWorkflowRuleRequest] API request.
1267
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
1268
+ # @return [Temporalio::Api::WorkflowService::V1::DescribeWorkflowRuleResponse] API response.
1269
+ def describe_workflow_rule(request, rpc_options: nil)
1270
+ invoke_rpc(
1271
+ rpc: 'describe_workflow_rule',
1272
+ request_class: Temporalio::Api::WorkflowService::V1::DescribeWorkflowRuleRequest,
1273
+ response_class: Temporalio::Api::WorkflowService::V1::DescribeWorkflowRuleResponse,
1274
+ request:,
1275
+ rpc_options:
1276
+ )
1277
+ end
1278
+
1279
+ # Calls WorkflowService.DeleteWorkflowRule API call.
1280
+ #
1281
+ # @param request [Temporalio::Api::WorkflowService::V1::DeleteWorkflowRuleRequest] API request.
1282
+ # @param rpc_options [RPCOptions, nil] Advanced RPC options.
1283
+ # @return [Temporalio::Api::WorkflowService::V1::DeleteWorkflowRuleResponse] API response.
1284
+ def delete_workflow_rule(request, rpc_options: nil)
1285
+ invoke_rpc(
1286
+ rpc: 'delete_workflow_rule',
1287
+ request_class: Temporalio::Api::WorkflowService::V1::DeleteWorkflowRuleRequest,
1288
+ response_class: Temporalio::Api::WorkflowService::V1::DeleteWorkflowRuleResponse,
1289
+ request:,
1290
+ rpc_options:
1291
+ )
1292
+ end
1293
+
1294
+ # Calls WorkflowService.ListWorkflowRules API call.
980
1295
  #
981
- # @param request [Temporalio::Api::WorkflowService::V1::UpdateActivityOptionsByIdRequest] API request.
1296
+ # @param request [Temporalio::Api::WorkflowService::V1::ListWorkflowRulesRequest] API request.
982
1297
  # @param rpc_options [RPCOptions, nil] Advanced RPC options.
983
- # @return [Temporalio::Api::WorkflowService::V1::UpdateActivityOptionsByIdResponse] API response.
984
- def update_activity_options_by_id(request, rpc_options: nil)
1298
+ # @return [Temporalio::Api::WorkflowService::V1::ListWorkflowRulesResponse] API response.
1299
+ def list_workflow_rules(request, rpc_options: nil)
985
1300
  invoke_rpc(
986
- rpc: 'update_activity_options_by_id',
987
- request_class: Temporalio::Api::WorkflowService::V1::UpdateActivityOptionsByIdRequest,
988
- response_class: Temporalio::Api::WorkflowService::V1::UpdateActivityOptionsByIdResponse,
1301
+ rpc: 'list_workflow_rules',
1302
+ request_class: Temporalio::Api::WorkflowService::V1::ListWorkflowRulesRequest,
1303
+ response_class: Temporalio::Api::WorkflowService::V1::ListWorkflowRulesResponse,
989
1304
  request:,
990
1305
  rpc_options:
991
1306
  )
992
1307
  end
993
1308
 
994
- # Calls WorkflowService.PauseActivityById API call.
1309
+ # Calls WorkflowService.TriggerWorkflowRule API call.
995
1310
  #
996
- # @param request [Temporalio::Api::WorkflowService::V1::PauseActivityByIdRequest] API request.
1311
+ # @param request [Temporalio::Api::WorkflowService::V1::TriggerWorkflowRuleRequest] API request.
997
1312
  # @param rpc_options [RPCOptions, nil] Advanced RPC options.
998
- # @return [Temporalio::Api::WorkflowService::V1::PauseActivityByIdResponse] API response.
999
- def pause_activity_by_id(request, rpc_options: nil)
1313
+ # @return [Temporalio::Api::WorkflowService::V1::TriggerWorkflowRuleResponse] API response.
1314
+ def trigger_workflow_rule(request, rpc_options: nil)
1000
1315
  invoke_rpc(
1001
- rpc: 'pause_activity_by_id',
1002
- request_class: Temporalio::Api::WorkflowService::V1::PauseActivityByIdRequest,
1003
- response_class: Temporalio::Api::WorkflowService::V1::PauseActivityByIdResponse,
1316
+ rpc: 'trigger_workflow_rule',
1317
+ request_class: Temporalio::Api::WorkflowService::V1::TriggerWorkflowRuleRequest,
1318
+ response_class: Temporalio::Api::WorkflowService::V1::TriggerWorkflowRuleResponse,
1004
1319
  request:,
1005
1320
  rpc_options:
1006
1321
  )
1007
1322
  end
1008
1323
 
1009
- # Calls WorkflowService.UnpauseActivityById API call.
1324
+ # Calls WorkflowService.RecordWorkerHeartbeat API call.
1010
1325
  #
1011
- # @param request [Temporalio::Api::WorkflowService::V1::UnpauseActivityByIdRequest] API request.
1326
+ # @param request [Temporalio::Api::WorkflowService::V1::RecordWorkerHeartbeatRequest] API request.
1012
1327
  # @param rpc_options [RPCOptions, nil] Advanced RPC options.
1013
- # @return [Temporalio::Api::WorkflowService::V1::UnpauseActivityByIdResponse] API response.
1014
- def unpause_activity_by_id(request, rpc_options: nil)
1328
+ # @return [Temporalio::Api::WorkflowService::V1::RecordWorkerHeartbeatResponse] API response.
1329
+ def record_worker_heartbeat(request, rpc_options: nil)
1015
1330
  invoke_rpc(
1016
- rpc: 'unpause_activity_by_id',
1017
- request_class: Temporalio::Api::WorkflowService::V1::UnpauseActivityByIdRequest,
1018
- response_class: Temporalio::Api::WorkflowService::V1::UnpauseActivityByIdResponse,
1331
+ rpc: 'record_worker_heartbeat',
1332
+ request_class: Temporalio::Api::WorkflowService::V1::RecordWorkerHeartbeatRequest,
1333
+ response_class: Temporalio::Api::WorkflowService::V1::RecordWorkerHeartbeatResponse,
1019
1334
  request:,
1020
1335
  rpc_options:
1021
1336
  )
1022
1337
  end
1023
1338
 
1024
- # Calls WorkflowService.ResetActivityById API call.
1339
+ # Calls WorkflowService.ListWorkers API call.
1025
1340
  #
1026
- # @param request [Temporalio::Api::WorkflowService::V1::ResetActivityByIdRequest] API request.
1341
+ # @param request [Temporalio::Api::WorkflowService::V1::ListWorkersRequest] API request.
1027
1342
  # @param rpc_options [RPCOptions, nil] Advanced RPC options.
1028
- # @return [Temporalio::Api::WorkflowService::V1::ResetActivityByIdResponse] API response.
1029
- def reset_activity_by_id(request, rpc_options: nil)
1343
+ # @return [Temporalio::Api::WorkflowService::V1::ListWorkersResponse] API response.
1344
+ def list_workers(request, rpc_options: nil)
1030
1345
  invoke_rpc(
1031
- rpc: 'reset_activity_by_id',
1032
- request_class: Temporalio::Api::WorkflowService::V1::ResetActivityByIdRequest,
1033
- response_class: Temporalio::Api::WorkflowService::V1::ResetActivityByIdResponse,
1346
+ rpc: 'list_workers',
1347
+ request_class: Temporalio::Api::WorkflowService::V1::ListWorkersRequest,
1348
+ response_class: Temporalio::Api::WorkflowService::V1::ListWorkersResponse,
1034
1349
  request:,
1035
1350
  rpc_options:
1036
1351
  )
@@ -23,6 +23,8 @@ module Temporalio
23
23
  :args,
24
24
  :workflow_id,
25
25
  :task_queue,
26
+ :static_summary,
27
+ :static_details,
26
28
  :execution_timeout,
27
29
  :run_timeout,
28
30
  :task_timeout,
@@ -34,13 +36,42 @@ module Temporalio
34
36
  :search_attributes,
35
37
  :start_delay,
36
38
  :request_eager_start,
39
+ :versioning_override,
40
+ :priority,
41
+ :arg_hints,
42
+ :result_hint,
37
43
  :headers,
38
44
  :rpc_options
39
45
  )
40
46
 
41
- # Input for {Outbound.list_workflows}.
42
- ListWorkflowsInput = Data.define(
47
+ # Input for {Outbound.start_update_with_start_workflow}.
48
+ StartUpdateWithStartWorkflowInput = Data.define(
49
+ :update_id,
50
+ :update,
51
+ :args,
52
+ :wait_for_stage,
53
+ :start_workflow_operation,
54
+ :arg_hints,
55
+ :result_hint,
56
+ :headers,
57
+ :rpc_options
58
+ )
59
+
60
+ # Input for {Outbound.signal_with_start_workflow}.
61
+ SignalWithStartWorkflowInput = Data.define(
62
+ :signal,
63
+ :args,
64
+ :start_workflow_operation,
65
+ :arg_hints,
66
+ # Headers intentionally not defined here, because they are not separate from start_workflow_operation
67
+ :rpc_options
68
+ )
69
+
70
+ # Input for {Outbound.list_workflow_page}.
71
+ ListWorkflowPageInput = Data.define(
43
72
  :query,
73
+ :next_page_token,
74
+ :page_size,
44
75
  :rpc_options
45
76
  )
46
77
 
@@ -73,6 +104,7 @@ module Temporalio
73
104
  :run_id,
74
105
  :signal,
75
106
  :args,
107
+ :arg_hints,
76
108
  :headers,
77
109
  :rpc_options
78
110
  )
@@ -84,6 +116,8 @@ module Temporalio
84
116
  :query,
85
117
  :args,
86
118
  :reject_condition,
119
+ :arg_hints,
120
+ :result_hint,
87
121
  :headers,
88
122
  :rpc_options
89
123
  )
@@ -96,6 +130,8 @@ module Temporalio
96
130
  :update,
97
131
  :args,
98
132
  :wait_for_stage,
133
+ :arg_hints,
134
+ :result_hint,
99
135
  :headers,
100
136
  :rpc_options
101
137
  )
@@ -194,6 +230,7 @@ module Temporalio
194
230
  HeartbeatAsyncActivityInput = Data.define(
195
231
  :task_token_or_id_reference,
196
232
  :details,
233
+ :detail_hints,
197
234
  :rpc_options
198
235
  )
199
236
 
@@ -201,6 +238,7 @@ module Temporalio
201
238
  CompleteAsyncActivityInput = Data.define(
202
239
  :task_token_or_id_reference,
203
240
  :result,
241
+ :result_hint,
204
242
  :rpc_options
205
243
  )
206
244
 
@@ -209,6 +247,7 @@ module Temporalio
209
247
  :task_token_or_id_reference,
210
248
  :error,
211
249
  :last_heartbeat_details,
250
+ :last_heartbeat_detail_hints,
212
251
  :rpc_options
213
252
  )
214
253
 
@@ -216,6 +255,7 @@ module Temporalio
216
255
  ReportCancellationAsyncActivityInput = Data.define(
217
256
  :task_token_or_id_reference,
218
257
  :details,
258
+ :detail_hints,
219
259
  :rpc_options
220
260
  )
221
261
 
@@ -240,12 +280,29 @@ module Temporalio
240
280
  next_interceptor.start_workflow(input)
241
281
  end
242
282
 
243
- # Called for every {Client.list_workflows} call.
283
+ # Called for every {Client.start_update_with_start_workflow} and {Client.execute_update_with_start_workflow}
284
+ # call.
285
+ #
286
+ # @param input [StartUpdateWithStartWorkflowInput] Input.
287
+ # @return [WorkflowUpdateHandle] Workflow update handle.
288
+ def start_update_with_start_workflow(input)
289
+ next_interceptor.start_update_with_start_workflow(input)
290
+ end
291
+
292
+ # Called for every {Client.signal_with_start_workflow}.
293
+ #
294
+ # @param input [SignalWithStartWorkflowInput] Input.
295
+ # @return [WorkflowHandle] Workflow handle.
296
+ def signal_with_start_workflow(input)
297
+ next_interceptor.signal_with_start_workflow(input)
298
+ end
299
+
300
+ # Called for every {Client.list_workflow_page} call.
244
301
  #
245
- # @param input [ListWorkflowsInput] Input.
246
- # @return [Enumerator<WorkflowExecution>] Enumerable workflow executions.
247
- def list_workflows(input)
248
- next_interceptor.list_workflows(input)
302
+ # @param input [ListWorkflowPageInput] Input.
303
+ # @return [Client::ListWorkflowPage] Enumerable workflow executions, with a #next_page_token method.
304
+ def list_workflow_page(input)
305
+ next_interceptor.list_workflow_page(input)
249
306
  end
250
307
 
251
308
  # Called for every {Client.count_workflows} call.