temporalio 0.4.0-x86_64-linux → 0.6.0-x86_64-linux
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.
- checksums.yaml +4 -4
- data/.yardopts +1 -1
- data/lib/temporalio/activity/cancellation_details.rb +58 -0
- data/lib/temporalio/activity/context.rb +10 -1
- data/lib/temporalio/activity/definition.rb +41 -3
- data/lib/temporalio/activity/info.rb +25 -4
- data/lib/temporalio/activity.rb +2 -0
- data/lib/temporalio/api/activity/v1/message.rb +1 -1
- data/lib/temporalio/api/batch/v1/message.rb +7 -2
- data/lib/temporalio/api/cloud/account/v1/message.rb +1 -1
- data/lib/temporalio/api/cloud/cloudservice/v1/request_response.rb +22 -2
- data/lib/temporalio/api/cloud/cloudservice/v1/service.rb +2 -2
- data/lib/temporalio/api/cloud/connectivityrule/v1/message.rb +29 -0
- data/lib/temporalio/api/cloud/identity/v1/message.rb +7 -2
- data/lib/temporalio/api/cloud/namespace/v1/message.rb +7 -2
- data/lib/temporalio/api/cloud/nexus/v1/message.rb +3 -2
- data/lib/temporalio/api/cloud/operation/v1/message.rb +2 -2
- data/lib/temporalio/api/cloud/region/v1/message.rb +1 -1
- data/lib/temporalio/api/cloud/resource/v1/message.rb +1 -1
- data/lib/temporalio/api/cloud/sink/v1/message.rb +1 -1
- data/lib/temporalio/api/cloud/usage/v1/message.rb +1 -1
- data/lib/temporalio/api/command/v1/message.rb +2 -2
- data/lib/temporalio/api/common/v1/grpc_status.rb +1 -1
- data/lib/temporalio/api/common/v1/message.rb +4 -2
- data/lib/temporalio/api/deployment/v1/message.rb +3 -2
- data/lib/temporalio/api/enums/v1/batch_operation.rb +2 -2
- data/lib/temporalio/api/enums/v1/command_type.rb +1 -1
- data/lib/temporalio/api/enums/v1/common.rb +5 -2
- data/lib/temporalio/api/enums/v1/deployment.rb +3 -2
- data/lib/temporalio/api/enums/v1/event_type.rb +2 -2
- data/lib/temporalio/api/enums/v1/failed_cause.rb +2 -2
- data/lib/temporalio/api/enums/v1/namespace.rb +1 -1
- data/lib/temporalio/api/enums/v1/nexus.rb +1 -1
- data/lib/temporalio/api/enums/v1/query.rb +1 -1
- data/lib/temporalio/api/enums/v1/reset.rb +1 -1
- data/lib/temporalio/api/enums/v1/schedule.rb +1 -1
- data/lib/temporalio/api/enums/v1/task_queue.rb +3 -2
- data/lib/temporalio/api/enums/v1/update.rb +1 -1
- data/lib/temporalio/api/enums/v1/workflow.rb +2 -2
- data/lib/temporalio/api/errordetails/v1/message.rb +1 -1
- data/lib/temporalio/api/export/v1/message.rb +1 -1
- data/lib/temporalio/api/failure/v1/message.rb +3 -2
- data/lib/temporalio/api/filter/v1/message.rb +1 -1
- data/lib/temporalio/api/history/v1/message.rb +4 -2
- data/lib/temporalio/api/namespace/v1/message.rb +1 -1
- data/lib/temporalio/api/nexus/v1/message.rb +2 -2
- data/lib/temporalio/api/operatorservice/v1/request_response.rb +1 -1
- data/lib/temporalio/api/operatorservice/v1/service.rb +1 -1
- data/lib/temporalio/api/payload_visitor.rb +106 -1
- data/lib/temporalio/api/protocol/v1/message.rb +1 -1
- data/lib/temporalio/api/query/v1/message.rb +1 -1
- data/lib/temporalio/api/replication/v1/message.rb +1 -1
- data/lib/temporalio/api/rules/v1/message.rb +27 -0
- data/lib/temporalio/api/schedule/v1/message.rb +2 -2
- data/lib/temporalio/api/sdk/v1/enhanced_stack_trace.rb +1 -1
- data/lib/temporalio/api/sdk/v1/task_complete_metadata.rb +1 -1
- data/lib/temporalio/api/sdk/v1/user_metadata.rb +1 -1
- data/lib/temporalio/api/sdk/v1/worker_config.rb +23 -0
- data/lib/temporalio/api/sdk/v1/workflow_metadata.rb +1 -1
- data/lib/temporalio/api/taskqueue/v1/message.rb +6 -2
- data/lib/temporalio/api/testservice/v1/request_response.rb +1 -1
- data/lib/temporalio/api/testservice/v1/service.rb +1 -1
- data/lib/temporalio/api/update/v1/message.rb +1 -1
- data/lib/temporalio/api/version/v1/message.rb +1 -1
- data/lib/temporalio/api/worker/v1/message.rb +31 -0
- data/lib/temporalio/api/workflow/v1/message.rb +14 -2
- data/lib/temporalio/api/workflowservice/v1/request_response.rb +28 -2
- data/lib/temporalio/api/workflowservice/v1/service.rb +2 -2
- data/lib/temporalio/cancellation.rb +16 -12
- data/lib/temporalio/client/async_activity_handle.rb +12 -4
- data/lib/temporalio/client/connection/cloud_service.rb +135 -0
- data/lib/temporalio/client/connection/workflow_service.rb +150 -0
- data/lib/temporalio/client/connection.rb +2 -1
- data/lib/temporalio/client/interceptor.rb +25 -7
- data/lib/temporalio/client/schedule.rb +10 -2
- data/lib/temporalio/client/with_start_workflow_operation.rb +9 -1
- data/lib/temporalio/client/workflow_handle.rb +50 -10
- data/lib/temporalio/client/workflow_update_handle.rb +9 -3
- data/lib/temporalio/client.rb +110 -6
- data/lib/temporalio/common_enums.rb +14 -0
- data/lib/temporalio/contrib/open_telemetry.rb +7 -7
- data/lib/temporalio/converters/data_converter.rb +18 -8
- data/lib/temporalio/converters/failure_converter.rb +6 -3
- data/lib/temporalio/converters/payload_converter/binary_null.rb +2 -2
- data/lib/temporalio/converters/payload_converter/binary_plain.rb +2 -2
- data/lib/temporalio/converters/payload_converter/binary_protobuf.rb +2 -2
- data/lib/temporalio/converters/payload_converter/composite.rb +6 -4
- data/lib/temporalio/converters/payload_converter/encoding.rb +4 -2
- data/lib/temporalio/converters/payload_converter/json_plain.rb +24 -7
- data/lib/temporalio/converters/payload_converter/json_protobuf.rb +2 -2
- data/lib/temporalio/converters/payload_converter.rb +16 -6
- data/lib/temporalio/error/failure.rb +19 -1
- data/lib/temporalio/error.rb +1 -1
- data/lib/temporalio/internal/bridge/3.2/temporalio_bridge.so +0 -0
- data/lib/temporalio/internal/bridge/3.3/temporalio_bridge.so +0 -0
- data/lib/temporalio/internal/bridge/3.4/temporalio_bridge.so +0 -0
- data/lib/temporalio/internal/bridge/api/activity_result/activity_result.rb +1 -1
- data/lib/temporalio/internal/bridge/api/activity_task/activity_task.rb +3 -2
- data/lib/temporalio/internal/bridge/api/child_workflow/child_workflow.rb +1 -1
- data/lib/temporalio/internal/bridge/api/common/common.rb +1 -1
- data/lib/temporalio/internal/bridge/api/core_interface.rb +1 -1
- data/lib/temporalio/internal/bridge/api/external_data/external_data.rb +1 -1
- data/lib/temporalio/internal/bridge/api/nexus/nexus.rb +3 -2
- data/lib/temporalio/internal/bridge/api/workflow_activation/workflow_activation.rb +2 -2
- data/lib/temporalio/internal/bridge/api/workflow_commands/workflow_commands.rb +3 -2
- data/lib/temporalio/internal/bridge/api/workflow_completion/workflow_completion.rb +1 -1
- data/lib/temporalio/internal/bridge/worker.rb +28 -4
- data/lib/temporalio/internal/bridge.rb +1 -1
- data/lib/temporalio/internal/client/implementation.rb +60 -52
- data/lib/temporalio/internal/proto_utils.rb +4 -4
- data/lib/temporalio/internal/worker/activity_worker.rb +93 -20
- data/lib/temporalio/internal/worker/workflow_instance/child_workflow_handle.rb +8 -6
- data/lib/temporalio/internal/worker/workflow_instance/context.rb +66 -24
- data/lib/temporalio/internal/worker/workflow_instance/details.rb +5 -2
- data/lib/temporalio/internal/worker/workflow_instance/external_workflow_handle.rb +2 -2
- data/lib/temporalio/internal/worker/workflow_instance/externally_immutable_hash.rb +2 -0
- data/lib/temporalio/internal/worker/workflow_instance/illegal_call_tracer.rb +64 -18
- data/lib/temporalio/internal/worker/workflow_instance/outbound_implementation.rb +28 -14
- data/lib/temporalio/internal/worker/workflow_instance/replay_safe_logger.rb +5 -2
- data/lib/temporalio/internal/worker/workflow_instance/scheduler.rb +10 -4
- data/lib/temporalio/internal/worker/workflow_instance.rb +58 -23
- data/lib/temporalio/internal/worker/workflow_worker.rb +16 -6
- data/lib/temporalio/priority.rb +100 -0
- data/lib/temporalio/scoped_logger.rb +1 -1
- data/lib/temporalio/testing/activity_environment.rb +17 -2
- data/lib/temporalio/testing/workflow_environment.rb +3 -3
- data/lib/temporalio/version.rb +1 -1
- data/lib/temporalio/versioning_override.rb +56 -0
- data/lib/temporalio/worker/deployment_options.rb +45 -0
- data/lib/temporalio/worker/illegal_workflow_call_validator.rb +73 -0
- data/lib/temporalio/worker/interceptor.rb +13 -1
- data/lib/temporalio/worker/poller_behavior.rb +61 -0
- data/lib/temporalio/worker/thread_pool.rb +1 -1
- data/lib/temporalio/worker/workflow_executor/thread_pool.rb +2 -1
- data/lib/temporalio/worker/workflow_replayer.rb +12 -13
- data/lib/temporalio/worker.rb +73 -28
- data/lib/temporalio/worker_deployment_version.rb +67 -0
- data/lib/temporalio/workflow/child_workflow_handle.rb +10 -2
- data/lib/temporalio/workflow/definition.rb +187 -39
- data/lib/temporalio/workflow/external_workflow_handle.rb +3 -1
- data/lib/temporalio/workflow/info.rb +4 -1
- data/lib/temporalio/workflow.rb +134 -11
- data/lib/temporalio.rb +1 -0
- data/temporalio.gemspec +1 -0
- metadata +13 -2
@@ -27,11 +27,13 @@ module Temporalio
|
|
27
27
|
# Record a heartbeat for the activity.
|
28
28
|
#
|
29
29
|
# @param details [Array<Object>] Details of the heartbeat.
|
30
|
+
# @param detail_hints [Array<Object>, nil] Converter hints for the details.
|
30
31
|
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
31
|
-
def heartbeat(*details, rpc_options: nil)
|
32
|
+
def heartbeat(*details, detail_hints: nil, rpc_options: nil)
|
32
33
|
@client._impl.heartbeat_async_activity(Interceptor::HeartbeatAsyncActivityInput.new(
|
33
34
|
task_token_or_id_reference:,
|
34
35
|
details:,
|
36
|
+
detail_hints:,
|
35
37
|
rpc_options:
|
36
38
|
))
|
37
39
|
end
|
@@ -39,11 +41,13 @@ module Temporalio
|
|
39
41
|
# Complete the activity.
|
40
42
|
#
|
41
43
|
# @param result [Object, nil] Result of the activity.
|
44
|
+
# @param result_hint [Object, nil] Converter hint for the result.
|
42
45
|
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
43
|
-
def complete(result = nil, rpc_options: nil)
|
46
|
+
def complete(result = nil, result_hint: nil, rpc_options: nil)
|
44
47
|
@client._impl.complete_async_activity(Interceptor::CompleteAsyncActivityInput.new(
|
45
48
|
task_token_or_id_reference:,
|
46
49
|
result:,
|
50
|
+
result_hint:,
|
47
51
|
rpc_options:
|
48
52
|
))
|
49
53
|
end
|
@@ -52,12 +56,14 @@ module Temporalio
|
|
52
56
|
#
|
53
57
|
# @param error [Exception] Error for the activity.
|
54
58
|
# @param last_heartbeat_details [Array<Object>] Last heartbeat details for the activity.
|
59
|
+
# @param last_heartbeat_detail_hints [Array<Object>, nil] Converter hints for the last heartbeat details.
|
55
60
|
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
56
|
-
def fail(error, last_heartbeat_details: [], rpc_options: nil)
|
61
|
+
def fail(error, last_heartbeat_details: [], last_heartbeat_detail_hints: nil, rpc_options: nil)
|
57
62
|
@client._impl.fail_async_activity(Interceptor::FailAsyncActivityInput.new(
|
58
63
|
task_token_or_id_reference:,
|
59
64
|
error:,
|
60
65
|
last_heartbeat_details:,
|
66
|
+
last_heartbeat_detail_hints:,
|
61
67
|
rpc_options:
|
62
68
|
))
|
63
69
|
end
|
@@ -65,12 +71,14 @@ module Temporalio
|
|
65
71
|
# Report the activity as canceled.
|
66
72
|
#
|
67
73
|
# @param details [Array<Object>] Cancellation details.
|
74
|
+
# @param detail_hints [Array<Object>, nil] Converter hints for the details.
|
68
75
|
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
69
76
|
# @raise [AsyncActivityCanceledError] If the activity has been canceled.
|
70
|
-
def report_cancellation(*details, rpc_options: nil)
|
77
|
+
def report_cancellation(*details, detail_hints: nil, rpc_options: nil)
|
71
78
|
@client._impl.report_cancellation_async_activity(Interceptor::ReportCancellationAsyncActivityInput.new(
|
72
79
|
task_token_or_id_reference:,
|
73
80
|
details:,
|
81
|
+
detail_hints:,
|
74
82
|
rpc_options:
|
75
83
|
))
|
76
84
|
end
|
@@ -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.
|
@@ -720,6 +780,81 @@ module Temporalio
|
|
720
780
|
rpc_options:
|
721
781
|
)
|
722
782
|
end
|
783
|
+
|
784
|
+
# Calls CloudService.UpdateNamespaceTags API call.
|
785
|
+
#
|
786
|
+
# @param request [Temporalio::Api::Cloud::CloudService::V1::UpdateNamespaceTagsRequest] API request.
|
787
|
+
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
788
|
+
# @return [Temporalio::Api::Cloud::CloudService::V1::UpdateNamespaceTagsResponse] API response.
|
789
|
+
def update_namespace_tags(request, rpc_options: nil)
|
790
|
+
invoke_rpc(
|
791
|
+
rpc: 'update_namespace_tags',
|
792
|
+
request_class: Temporalio::Api::Cloud::CloudService::V1::UpdateNamespaceTagsRequest,
|
793
|
+
response_class: Temporalio::Api::Cloud::CloudService::V1::UpdateNamespaceTagsResponse,
|
794
|
+
request:,
|
795
|
+
rpc_options:
|
796
|
+
)
|
797
|
+
end
|
798
|
+
|
799
|
+
# Calls CloudService.CreateConnectivityRule API call.
|
800
|
+
#
|
801
|
+
# @param request [Temporalio::Api::Cloud::CloudService::V1::CreateConnectivityRuleRequest] API request.
|
802
|
+
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
803
|
+
# @return [Temporalio::Api::Cloud::CloudService::V1::CreateConnectivityRuleResponse] API response.
|
804
|
+
def create_connectivity_rule(request, rpc_options: nil)
|
805
|
+
invoke_rpc(
|
806
|
+
rpc: 'create_connectivity_rule',
|
807
|
+
request_class: Temporalio::Api::Cloud::CloudService::V1::CreateConnectivityRuleRequest,
|
808
|
+
response_class: Temporalio::Api::Cloud::CloudService::V1::CreateConnectivityRuleResponse,
|
809
|
+
request:,
|
810
|
+
rpc_options:
|
811
|
+
)
|
812
|
+
end
|
813
|
+
|
814
|
+
# Calls CloudService.GetConnectivityRule API call.
|
815
|
+
#
|
816
|
+
# @param request [Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRuleRequest] API request.
|
817
|
+
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
818
|
+
# @return [Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRuleResponse] API response.
|
819
|
+
def get_connectivity_rule(request, rpc_options: nil)
|
820
|
+
invoke_rpc(
|
821
|
+
rpc: 'get_connectivity_rule',
|
822
|
+
request_class: Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRuleRequest,
|
823
|
+
response_class: Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRuleResponse,
|
824
|
+
request:,
|
825
|
+
rpc_options:
|
826
|
+
)
|
827
|
+
end
|
828
|
+
|
829
|
+
# Calls CloudService.GetConnectivityRules API call.
|
830
|
+
#
|
831
|
+
# @param request [Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRulesRequest] API request.
|
832
|
+
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
833
|
+
# @return [Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRulesResponse] API response.
|
834
|
+
def get_connectivity_rules(request, rpc_options: nil)
|
835
|
+
invoke_rpc(
|
836
|
+
rpc: 'get_connectivity_rules',
|
837
|
+
request_class: Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRulesRequest,
|
838
|
+
response_class: Temporalio::Api::Cloud::CloudService::V1::GetConnectivityRulesResponse,
|
839
|
+
request:,
|
840
|
+
rpc_options:
|
841
|
+
)
|
842
|
+
end
|
843
|
+
|
844
|
+
# Calls CloudService.DeleteConnectivityRule API call.
|
845
|
+
#
|
846
|
+
# @param request [Temporalio::Api::Cloud::CloudService::V1::DeleteConnectivityRuleRequest] API request.
|
847
|
+
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
848
|
+
# @return [Temporalio::Api::Cloud::CloudService::V1::DeleteConnectivityRuleResponse] API response.
|
849
|
+
def delete_connectivity_rule(request, rpc_options: nil)
|
850
|
+
invoke_rpc(
|
851
|
+
rpc: 'delete_connectivity_rule',
|
852
|
+
request_class: Temporalio::Api::Cloud::CloudService::V1::DeleteConnectivityRuleRequest,
|
853
|
+
response_class: Temporalio::Api::Cloud::CloudService::V1::DeleteConnectivityRuleResponse,
|
854
|
+
request:,
|
855
|
+
rpc_options:
|
856
|
+
)
|
857
|
+
end
|
723
858
|
end
|
724
859
|
end
|
725
860
|
end
|
@@ -1245,6 +1245,156 @@ module Temporalio
|
|
1245
1245
|
rpc_options:
|
1246
1246
|
)
|
1247
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.
|
1295
|
+
#
|
1296
|
+
# @param request [Temporalio::Api::WorkflowService::V1::ListWorkflowRulesRequest] API request.
|
1297
|
+
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
1298
|
+
# @return [Temporalio::Api::WorkflowService::V1::ListWorkflowRulesResponse] API response.
|
1299
|
+
def list_workflow_rules(request, rpc_options: nil)
|
1300
|
+
invoke_rpc(
|
1301
|
+
rpc: 'list_workflow_rules',
|
1302
|
+
request_class: Temporalio::Api::WorkflowService::V1::ListWorkflowRulesRequest,
|
1303
|
+
response_class: Temporalio::Api::WorkflowService::V1::ListWorkflowRulesResponse,
|
1304
|
+
request:,
|
1305
|
+
rpc_options:
|
1306
|
+
)
|
1307
|
+
end
|
1308
|
+
|
1309
|
+
# Calls WorkflowService.TriggerWorkflowRule API call.
|
1310
|
+
#
|
1311
|
+
# @param request [Temporalio::Api::WorkflowService::V1::TriggerWorkflowRuleRequest] API request.
|
1312
|
+
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
1313
|
+
# @return [Temporalio::Api::WorkflowService::V1::TriggerWorkflowRuleResponse] API response.
|
1314
|
+
def trigger_workflow_rule(request, rpc_options: nil)
|
1315
|
+
invoke_rpc(
|
1316
|
+
rpc: 'trigger_workflow_rule',
|
1317
|
+
request_class: Temporalio::Api::WorkflowService::V1::TriggerWorkflowRuleRequest,
|
1318
|
+
response_class: Temporalio::Api::WorkflowService::V1::TriggerWorkflowRuleResponse,
|
1319
|
+
request:,
|
1320
|
+
rpc_options:
|
1321
|
+
)
|
1322
|
+
end
|
1323
|
+
|
1324
|
+
# Calls WorkflowService.RecordWorkerHeartbeat API call.
|
1325
|
+
#
|
1326
|
+
# @param request [Temporalio::Api::WorkflowService::V1::RecordWorkerHeartbeatRequest] API request.
|
1327
|
+
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
1328
|
+
# @return [Temporalio::Api::WorkflowService::V1::RecordWorkerHeartbeatResponse] API response.
|
1329
|
+
def record_worker_heartbeat(request, rpc_options: nil)
|
1330
|
+
invoke_rpc(
|
1331
|
+
rpc: 'record_worker_heartbeat',
|
1332
|
+
request_class: Temporalio::Api::WorkflowService::V1::RecordWorkerHeartbeatRequest,
|
1333
|
+
response_class: Temporalio::Api::WorkflowService::V1::RecordWorkerHeartbeatResponse,
|
1334
|
+
request:,
|
1335
|
+
rpc_options:
|
1336
|
+
)
|
1337
|
+
end
|
1338
|
+
|
1339
|
+
# Calls WorkflowService.ListWorkers API call.
|
1340
|
+
#
|
1341
|
+
# @param request [Temporalio::Api::WorkflowService::V1::ListWorkersRequest] API request.
|
1342
|
+
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
1343
|
+
# @return [Temporalio::Api::WorkflowService::V1::ListWorkersResponse] API response.
|
1344
|
+
def list_workers(request, rpc_options: nil)
|
1345
|
+
invoke_rpc(
|
1346
|
+
rpc: 'list_workers',
|
1347
|
+
request_class: Temporalio::Api::WorkflowService::V1::ListWorkersRequest,
|
1348
|
+
response_class: Temporalio::Api::WorkflowService::V1::ListWorkersResponse,
|
1349
|
+
request:,
|
1350
|
+
rpc_options:
|
1351
|
+
)
|
1352
|
+
end
|
1353
|
+
|
1354
|
+
# Calls WorkflowService.UpdateTaskQueueConfig API call.
|
1355
|
+
#
|
1356
|
+
# @param request [Temporalio::Api::WorkflowService::V1::UpdateTaskQueueConfigRequest] API request.
|
1357
|
+
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
1358
|
+
# @return [Temporalio::Api::WorkflowService::V1::UpdateTaskQueueConfigResponse] API response.
|
1359
|
+
def update_task_queue_config(request, rpc_options: nil)
|
1360
|
+
invoke_rpc(
|
1361
|
+
rpc: 'update_task_queue_config',
|
1362
|
+
request_class: Temporalio::Api::WorkflowService::V1::UpdateTaskQueueConfigRequest,
|
1363
|
+
response_class: Temporalio::Api::WorkflowService::V1::UpdateTaskQueueConfigResponse,
|
1364
|
+
request:,
|
1365
|
+
rpc_options:
|
1366
|
+
)
|
1367
|
+
end
|
1368
|
+
|
1369
|
+
# Calls WorkflowService.FetchWorkerConfig API call.
|
1370
|
+
#
|
1371
|
+
# @param request [Temporalio::Api::WorkflowService::V1::FetchWorkerConfigRequest] API request.
|
1372
|
+
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
1373
|
+
# @return [Temporalio::Api::WorkflowService::V1::FetchWorkerConfigResponse] API response.
|
1374
|
+
def fetch_worker_config(request, rpc_options: nil)
|
1375
|
+
invoke_rpc(
|
1376
|
+
rpc: 'fetch_worker_config',
|
1377
|
+
request_class: Temporalio::Api::WorkflowService::V1::FetchWorkerConfigRequest,
|
1378
|
+
response_class: Temporalio::Api::WorkflowService::V1::FetchWorkerConfigResponse,
|
1379
|
+
request:,
|
1380
|
+
rpc_options:
|
1381
|
+
)
|
1382
|
+
end
|
1383
|
+
|
1384
|
+
# Calls WorkflowService.UpdateWorkerConfig API call.
|
1385
|
+
#
|
1386
|
+
# @param request [Temporalio::Api::WorkflowService::V1::UpdateWorkerConfigRequest] API request.
|
1387
|
+
# @param rpc_options [RPCOptions, nil] Advanced RPC options.
|
1388
|
+
# @return [Temporalio::Api::WorkflowService::V1::UpdateWorkerConfigResponse] API response.
|
1389
|
+
def update_worker_config(request, rpc_options: nil)
|
1390
|
+
invoke_rpc(
|
1391
|
+
rpc: 'update_worker_config',
|
1392
|
+
request_class: Temporalio::Api::WorkflowService::V1::UpdateWorkerConfigRequest,
|
1393
|
+
response_class: Temporalio::Api::WorkflowService::V1::UpdateWorkerConfigResponse,
|
1394
|
+
request:,
|
1395
|
+
rpc_options:
|
1396
|
+
)
|
1397
|
+
end
|
1248
1398
|
end
|
1249
1399
|
end
|
1250
1400
|
end
|
@@ -124,7 +124,8 @@ module Temporalio
|
|
124
124
|
# Options for HTTP CONNECT proxy for client connections.
|
125
125
|
#
|
126
126
|
# @!attribute target_host
|
127
|
-
# @return [String] Target
|
127
|
+
# @return [String] Target for the HTTP CONNECT proxy. Use host:port for TCP, or unix:/path/to/unix.sock for Unix
|
128
|
+
# socket (meaning it'll start with "unix:/").
|
128
129
|
# @!attribute basic_auth_user
|
129
130
|
# @return [String, nil] User for HTTP basic auth for the proxy, must be combined with {basic_auth_pass}.
|
130
131
|
# @!attribute basic_auth_pass
|
@@ -36,6 +36,10 @@ module Temporalio
|
|
36
36
|
:search_attributes,
|
37
37
|
:start_delay,
|
38
38
|
:request_eager_start,
|
39
|
+
:versioning_override,
|
40
|
+
:priority,
|
41
|
+
:arg_hints,
|
42
|
+
:result_hint,
|
39
43
|
:headers,
|
40
44
|
:rpc_options
|
41
45
|
)
|
@@ -47,6 +51,8 @@ module Temporalio
|
|
47
51
|
:args,
|
48
52
|
:wait_for_stage,
|
49
53
|
:start_workflow_operation,
|
54
|
+
:arg_hints,
|
55
|
+
:result_hint,
|
50
56
|
:headers,
|
51
57
|
:rpc_options
|
52
58
|
)
|
@@ -56,13 +62,16 @@ module Temporalio
|
|
56
62
|
:signal,
|
57
63
|
:args,
|
58
64
|
:start_workflow_operation,
|
65
|
+
:arg_hints,
|
59
66
|
# Headers intentionally not defined here, because they are not separate from start_workflow_operation
|
60
67
|
:rpc_options
|
61
68
|
)
|
62
69
|
|
63
|
-
# Input for {Outbound.
|
64
|
-
|
70
|
+
# Input for {Outbound.list_workflow_page}.
|
71
|
+
ListWorkflowPageInput = Data.define(
|
65
72
|
:query,
|
73
|
+
:next_page_token,
|
74
|
+
:page_size,
|
66
75
|
:rpc_options
|
67
76
|
)
|
68
77
|
|
@@ -95,6 +104,7 @@ module Temporalio
|
|
95
104
|
:run_id,
|
96
105
|
:signal,
|
97
106
|
:args,
|
107
|
+
:arg_hints,
|
98
108
|
:headers,
|
99
109
|
:rpc_options
|
100
110
|
)
|
@@ -106,6 +116,8 @@ module Temporalio
|
|
106
116
|
:query,
|
107
117
|
:args,
|
108
118
|
:reject_condition,
|
119
|
+
:arg_hints,
|
120
|
+
:result_hint,
|
109
121
|
:headers,
|
110
122
|
:rpc_options
|
111
123
|
)
|
@@ -118,6 +130,8 @@ module Temporalio
|
|
118
130
|
:update,
|
119
131
|
:args,
|
120
132
|
:wait_for_stage,
|
133
|
+
:arg_hints,
|
134
|
+
:result_hint,
|
121
135
|
:headers,
|
122
136
|
:rpc_options
|
123
137
|
)
|
@@ -216,6 +230,7 @@ module Temporalio
|
|
216
230
|
HeartbeatAsyncActivityInput = Data.define(
|
217
231
|
:task_token_or_id_reference,
|
218
232
|
:details,
|
233
|
+
:detail_hints,
|
219
234
|
:rpc_options
|
220
235
|
)
|
221
236
|
|
@@ -223,6 +238,7 @@ module Temporalio
|
|
223
238
|
CompleteAsyncActivityInput = Data.define(
|
224
239
|
:task_token_or_id_reference,
|
225
240
|
:result,
|
241
|
+
:result_hint,
|
226
242
|
:rpc_options
|
227
243
|
)
|
228
244
|
|
@@ -231,6 +247,7 @@ module Temporalio
|
|
231
247
|
:task_token_or_id_reference,
|
232
248
|
:error,
|
233
249
|
:last_heartbeat_details,
|
250
|
+
:last_heartbeat_detail_hints,
|
234
251
|
:rpc_options
|
235
252
|
)
|
236
253
|
|
@@ -238,6 +255,7 @@ module Temporalio
|
|
238
255
|
ReportCancellationAsyncActivityInput = Data.define(
|
239
256
|
:task_token_or_id_reference,
|
240
257
|
:details,
|
258
|
+
:detail_hints,
|
241
259
|
:rpc_options
|
242
260
|
)
|
243
261
|
|
@@ -279,12 +297,12 @@ module Temporalio
|
|
279
297
|
next_interceptor.signal_with_start_workflow(input)
|
280
298
|
end
|
281
299
|
|
282
|
-
# Called for every {Client.
|
300
|
+
# Called for every {Client.list_workflow_page} call.
|
283
301
|
#
|
284
|
-
# @param input [
|
285
|
-
# @return [
|
286
|
-
def
|
287
|
-
next_interceptor.
|
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)
|
288
306
|
end
|
289
307
|
|
290
308
|
# Called for every {Client.count_workflows} call.
|
@@ -175,6 +175,7 @@ module Temporalio
|
|
175
175
|
:retry_policy,
|
176
176
|
:memo,
|
177
177
|
:search_attributes,
|
178
|
+
:arg_hints,
|
178
179
|
:headers
|
179
180
|
)
|
180
181
|
|
@@ -208,6 +209,9 @@ module Temporalio
|
|
208
209
|
# @return [Hash<String, Object>, nil] Memo for the workflow.
|
209
210
|
# @!attribute search_attributes
|
210
211
|
# @return [SearchAttributes, nil] Search attributes for the workflow.
|
212
|
+
# @!attribute arg_hints
|
213
|
+
# @return [Array<Object>, nil] Converter hints for workflow arguments. This is only user-set (e.g. on create)
|
214
|
+
# and is not persisted and therefore will not be set when describing a workflow.
|
211
215
|
# @!attribute headers
|
212
216
|
# @return [Hash<String, Object>, nil] Headers for the workflow.
|
213
217
|
class StartWorkflow
|
@@ -249,10 +253,13 @@ module Temporalio
|
|
249
253
|
retry_policy: nil,
|
250
254
|
memo: nil,
|
251
255
|
search_attributes: nil,
|
256
|
+
arg_hints: nil,
|
252
257
|
headers: nil
|
253
258
|
)
|
259
|
+
workflow, defn_arg_hints, =
|
260
|
+
Workflow::Definition._workflow_type_and_hints_from_workflow_parameter(workflow)
|
254
261
|
_original_new( # steep:ignore
|
255
|
-
workflow
|
262
|
+
workflow:,
|
256
263
|
args:,
|
257
264
|
id:,
|
258
265
|
task_queue:,
|
@@ -264,6 +271,7 @@ module Temporalio
|
|
264
271
|
retry_policy:,
|
265
272
|
memo:,
|
266
273
|
search_attributes:,
|
274
|
+
arg_hints: arg_hints || defn_arg_hints,
|
267
275
|
headers:
|
268
276
|
)
|
269
277
|
end
|
@@ -296,7 +304,7 @@ module Temporalio
|
|
296
304
|
workflow_id: id,
|
297
305
|
workflow_type: Api::Common::V1::WorkflowType.new(name: workflow),
|
298
306
|
task_queue: Api::TaskQueue::V1::TaskQueue.new(name: task_queue),
|
299
|
-
input: data_converter.to_payloads(args),
|
307
|
+
input: data_converter.to_payloads(args, hints: arg_hints),
|
300
308
|
workflow_execution_timeout: Internal::ProtoUtils.seconds_to_duration(execution_timeout),
|
301
309
|
workflow_run_timeout: Internal::ProtoUtils.seconds_to_duration(run_timeout),
|
302
310
|
workflow_task_timeout: Internal::ProtoUtils.seconds_to_duration(task_timeout),
|
@@ -24,6 +24,8 @@ module Temporalio
|
|
24
24
|
:memo,
|
25
25
|
:search_attributes,
|
26
26
|
:start_delay,
|
27
|
+
:arg_hints,
|
28
|
+
:result_hint,
|
27
29
|
:headers
|
28
30
|
)
|
29
31
|
|
@@ -55,10 +57,14 @@ module Temporalio
|
|
55
57
|
memo: nil,
|
56
58
|
search_attributes: nil,
|
57
59
|
start_delay: nil,
|
60
|
+
arg_hints: nil,
|
61
|
+
result_hint: nil,
|
58
62
|
headers: {}
|
59
63
|
)
|
64
|
+
workflow, defn_arg_hints, defn_result_hint =
|
65
|
+
Workflow::Definition._workflow_type_and_hints_from_workflow_parameter(workflow)
|
60
66
|
@options = Options.new(
|
61
|
-
workflow
|
67
|
+
workflow:,
|
62
68
|
args:,
|
63
69
|
id:,
|
64
70
|
task_queue:,
|
@@ -74,6 +80,8 @@ module Temporalio
|
|
74
80
|
memo:,
|
75
81
|
search_attributes:,
|
76
82
|
start_delay:,
|
83
|
+
arg_hints: arg_hints || defn_arg_hints,
|
84
|
+
result_hint: result_hint || defn_result_hint,
|
77
85
|
headers:
|
78
86
|
)
|
79
87
|
@workflow_handle_mutex = Mutex.new
|